0

以下两个哪个更快?唯一的区别是显式array()初始化。

$fields['a'] = 1;
$fields['b'] = 2;

对比

$fields = array();
$fields['a'] = 1;
$fields['b'] = 2;
4

3 回答 3

6

与其担心性能,不如编写合理、易读的代码。这要好得多:

$fields = array();
$fields['a'] = 1;
$fields['b'] = 2;

与此相比:

$fields['a'] = 1;
$fields['b'] = 2;

您可能会节省几分之一秒的机器;但是您肯定会浪费阅读您代码的人的宝贵时间。他/她将不得不滚动浏览您的代码以找到$fields初始化的位置以及它是否已经包含一些值。

于 2013-01-08T08:38:23.460 回答
2

微基准没有意义,focus on more readable code但出于教育目的,这是最快的

$array = array('a' => 1,'b' => 2); // fastest PHP 5.4
$array = ['a' => 1,'b' => 2]; // fastest PHP 5.5

见基准

于 2013-01-08T09:04:22.967 回答
2

注意:这些数字因硬件而异

0.0000109672546386720没有 array() 的秒数;

VS

0.0000090599060058594秒数与数组();(快点!)

但使用 array() 更好;似乎更符合逻辑。

于 2013-01-08T08:40:16.733 回答