PHP:array_push将一个或多个单元压入数组的末尾

Lasted 2020-01-03 13:25:52

array_push()函数将一个或多个单元压入数组的末尾。

语法

array_push ( array &$array , mixed $value1 [, mixed $... ] ) : int

常用示例

添加元素

<?php

$stack = array("orange", "banana");
array_push($stack, "apple", "raspberry");
print_r($stack);

?>

 添加元素的效果跟下面代码相同:

<?php
$array[] = $var;
?>

两种方法性能比较

<?php


$starttime = get_microtime();
$arr = array();
for($i=0; $i<1000000; $i++){
  array_push($arr, $i);
}
$endtime = get_microtime();
printf("array_push time %f ms\r\n", ($endtime-$starttime)*1000);

$starttime = get_microtime();
$arr = array();
for($i=0; $i<1000000; $i++){
  $arr[] = $i;
}
$endtime = get_microtime();
printf("========[] time %f ms\r\n", ($endtime-$starttime)*1000);


function get_microtime(){
  list($usec, $sec) = explode(' ', microtime());
  return (float)$usec + (float)$sec;
}

以上代码执行结果每次可能不一样,不过总趋势是array_push()函数比较慢,建议增加元素使用$arr[]方法。

其中一次执行结果:

  • array_push time 78.655005 ms
  • =======[] time 38.719177 ms