2010-12-03 58 views
5

将变量添加到数组时速度更快?

  1. $ variable [] = $ newValue;
  2. array_push($ variable,$ newValue);

请提及两者之间的区别。

+11

没关系。两者都快速发展,差异可以忽略不计。停止过度优化你的代码。关注真正的问题。 – 2010-12-03 10:27:07

回答

17
http://www.php.net/manual/en/function.array-push.php#53289

Empy托架d请不要检查 变量是否是数组中的第一个数组,如 array_push所做的。如果array_push发现 变量不是数组,则它会在E_ALL 错误报告处于打开状态时打印警告消息。

因此,array_push比[]安全,直到 进一步由PHP 开发人员更改。

$variable[]似乎快了很多:

http://www.php.net/manual/en/function.array-push.php#83388

但是如果你每次迭代增加多个值array_push()更快:

http://www.php.net/manual/en/function.array-push.php#84959

但请请记住,公关电子优化是万恶之源。使用任何您感觉更舒适的方式,当出现性能问题时,使用分析器并做一些基准测试。

8

停止做奇怪的事情,并采取分析器获得真正的瓶颈。

ps:没有区别。

PPS:这里是典型的算法中:

  1. 应用程序是否速度满意吗?如果没有 - 第2步,如果是 - 第6步
  2. 以探查
  3. 找到最慢部分
  4. 优化它,所以它变得更快
  5. 转到步骤1
  6. 得到一些啤酒