PHP:使用mysql\u fetch\u数组更快地填充数组 在C++和JavaScript中,建议创建一个具有指定长度的数组,然后填充它。在PHP中有这样做的语法吗?或者不需要,因为PHP的数组是散列

PHP:使用mysql\u fetch\u数组更快地填充数组 在C++和JavaScript中,建议创建一个具有指定长度的数组,然后填充它。在PHP中有这样做的语法吗?或者不需要,因为PHP的数组是散列,php,mysql,Php,Mysql,ps:我正在使用mysql\u fetch\u array从mysql填充一个数组,并且我正在运行一个到它的循环so=(如果性能非常重要,您可以使用标准PHP库(SPL)中的SplFixedArray。一般来说,常规PHP数组可以,而不必担心所需数组的大小 它们的工作原理与其他语言中的数组类似。从文档中可以看出,“优点是它允许更快的数组实现。”如果性能非常重要,您可以使用标准PHP库(SPL)中的SplFixedArray。一般来说,常规PHP数组可以,而不必担心所需数组的大小 它们的工作原

ps:我正在使用
mysql\u fetch\u array
从mysql填充一个数组,并且我正在运行一个到它的循环so=(

如果性能非常重要,您可以使用标准PHP库(SPL)中的SplFixedArray。一般来说,常规PHP数组可以,而不必担心所需数组的大小


它们的工作原理与其他语言中的数组类似。从文档中可以看出,“优点是它允许更快的数组实现。”

如果性能非常重要,您可以使用标准PHP库(SPL)中的SplFixedArray。一般来说,常规PHP数组可以,而不必担心所需数组的大小


它们的工作原理与其他语言中的数组类似。从文档中可以看出,“其优点是可以更快地实现数组。”

您根本不必担心。
尽管有一些古书的理论建议,但在实际生活中,这种差异是可以忽略的,你永远不会注意到这种差异

通常的网页很少填充超过100行的数据库。相信我,这样大小的数组是不需要担心的。

如果恰好有一个大得多的数组,你必须首先考虑不要使用数组。

< P>你根本不用担心。 尽管有一些古书的理论建议,但在实际生活中,这种差异是可以忽略的,你永远不会注意到这种差异

通常的网页很少填充超过100行的数据库。相信我,这样大小的数组是不需要担心的。

如果恰好有一个大得多的数组,你必须首先考虑不要使用数组。

你可以这样做:

$size = 10;
$data = new SplFixedArray($size);
$i = 0;
while ($row = mysql_fetch_assoc($result)) {
    if($data->offsetExists($i)) {
        $data[$i] = $row;
    } else {
        $size += 10;
        $data->setSize($size);
        $data[$i] = $row;
    }
    $i++;
}

但我的建议是坚持使用普通阵列。

您可以这样做:

$size = 10;
$data = new SplFixedArray($size);
$i = 0;
while ($row = mysql_fetch_assoc($result)) {
    if($data->offsetExists($i)) {
        $data[$i] = $row;
    } else {
        $size += 10;
        $data->setSize($size);
        $data[$i] = $row;
    }
    $i++;
}

但是我的建议是坚持使用普通数组。

但是如果我们必须填充100行,那么
SplFixedArray
比标准数组快30%(!);但是如果我们必须填充100行,那么
SplFixedArray
就是30%(!)比标准阵列快!PThanks,我从来没有听说过
SplFixedArray
!我以后会测试性能以选择最佳方式谢谢,我从来没有听说过
SplFixedArray
!我以后会测试性能以选择最佳方式,但我可以使用
mysql\u num\u rows
来找到
SplFixedArra的确切大小y
。我想这正是我所需要的!我希望我可以完全使用SplFixedArray作为普通数组,而无需在其他地方重写一行代码…但我可以使用
mysql\u num\u rows
来查找
SplFixedArray
的确切大小。我想这正是我所需要的!我希望我可以完全使用SplFixedArray作为普通数组而无需重写在其他地方写一行代码。。。