1.array_push方法
array_push 方法,將一個或多個元素壓入陣列的末端。
int array_push ( array &$array , mixed $var [, mixed $... ] )
array_push() 將array當成一個棧,並將傳入的變數壓入array的末尾。 array的長度將根據入棧變數的數目增加。
與下效果相同:
<?php $arr[] = $value; ?>
2.比較array_push與 $arr[]=$value效能
使用array_push壓入1000000個元素
$value壓入100000個元素<?php $starttime = get_microtime(); $arr = array(); for($i=0; $i<1000000; $i++){ array_push($arr, $i); } $endtime = get_microtime(); printf("run time %f ms\r\n", ($endtime-$starttime)*1000); function get_microtime(){ list($usec, $sec) = explode(' ', microtime()); return (float)$usec + (float)$sec; } ?>
<?php $starttime = get_microtime(); $arr = array(); for($i=0; $i<1000000; $i++){ $arr[] = $i; } $endtime = get_microtime(); printf("run time %f ms\r\n", ($endtime-$starttime)*1000); function get_microtime(){ list($usec, $sec) = explode(' ', microtime()); return (float)$usec + (float)$sec; } ?>
如果同時壓入多個元素,使用array_push效率高,因為不用重複取得檔案尾的指標。