在PHP中最好使用$ array [] = $ value或array_push

在PHP中最好使用追加数组成员的方法:


$array[] = $value;

要么


array_push($array, $value);

尽管手册说您最好避免进行函数调用,但我阅读$array[]的速度也比慢得多array_push()。有没有人有任何澄清或基准?


慕桂英4014372
浏览 1003回答 3
3回答

繁星coding

没有基准,但是我个人感觉看起来$array[]更干净一些,并且诚实地在几毫秒内拆分头发是无关紧要的,除非您计划在数组中添加成千上万个字符串。编辑:运行此代码:$t = microtime(true);$array = array();for($i = 0; $i < 10000; $i++) {&nbsp; &nbsp; $array[] = $i;}print microtime(true) - $t;print '<br>';$t = microtime(true);$array = array();for($i = 0; $i < 10000; $i++) {&nbsp; &nbsp; array_push($array, $i);}print microtime(true) - $t;第一种方法使用的$array[]速度比第二种方法快50%。一些基准测试结果:Run 10.0054171085357666 // array_push0.0028800964355469 // array[]Run 20.0054559707641602 // array_push0.002892017364502 // array[]Run 30.0055501461029053 // array_push0.0028610229492188 // array[]这并不奇怪,因为PHP手册指出了这一点:如果使用array_push()将一个元素添加到数组中,则最好使用$ array [] =,因为这样就不会产生调用函数的开销。它的用词方式如果array_push添加多个值更有效,我也不会感到惊讶。编辑:出于好奇,进行了一些进一步的测试,即使添加了大量内容,单个$array[]通话也比一个通话快array_push。有趣。

慕仙森

array_push()的主要用途是可以将多个值压入数组的末尾。它在文档中说:如果使用array_push()将一个元素添加到数组中,则最好使用$ array [] =,因为这样就不会产生调用函数的开销。

千巷猫影

一个区别是,您可以使用两个以上的参数来调用array_push(),即您可以一次将一个以上的元素推入数组。$myArray = array();array_push($myArray, 1,2,3,4);echo join(',', $myArray);版画 1,2,3,4
打开App,查看更多内容
随时随地看视频慕课网APP