在php中数组赋值的时候用array[]这种方法效率会较高于array_push(),于是乎各种缘由就有了下面的测试测试代码: 1 3 *数组性能测试 4 *for循环有性能影响所以没有用 5 *测试是更改$count参数(从10~100000 整取递增)和调用方法手动刷新,记录时间为平均大概时间 6 **/ 7 8 $count = 10; 9 10 arrayTest01($count); 1112 function arrayTest01($count){13 $arr = array();14 $time = microtime(true);15 for($i = 0; $i 16 $array[] = $i;17 }18 echo (microtime(true) - $time);19 }2021 function arrayTest02($count){22 $arr = array();23 $time = microtime(true);24 for($i = 0; $i 25 array_push($arr, $i);26 }27 echo (microtime(true) - $time);28 }2930 ?>效率大概是array[]快将近一倍,测试环境是ubuntu 11 和 windows 7windows php-5.2.17/ Apache2.2times($count) 10 100 100010000   100000   1000000 array[] 2.31E-05 0.0001040.000867 0.008417 0.0436660.288323array_push 2.79E-050.000181 0.001614 0.0144470.055875 0.491052ubuntu11.04 PHP 5.3.6/apache2.2array[] 1.91E-05 7.70E-050.000726 0.007669 0.040492 报错 array_push 2.50E-051.26E-04 0.001149 0.0137140.056978 报错这是官方网站上的说辞Note: 如果用 array_push() 来给数组增加一个单元,还不如用 $array[] = ,因为这样没有调用函数的额外负担。官网链接:http://cn.php.net/array_push 摘自 静以修心
09-08 15:10