array_push() 和 $array[] 之间的差异 =

2022-08-30 07:14:59

在PHP手册中,(array_push)说..

如果使用 array_push() 向数组中添加一个元素,则最好使用 $array[] = ,因为这样调用函数就没有开销。

例如:

$arr = array();
array_push($arr, "stackoverflow");
print_r($arr);

$arr[] = "stackoverflow";
print_r($arr);

我不明白为什么有很大的不同。


答案 1

当您在PHP中调用函数(例如)时,调用会产生开销,因为PHP必须查找函数引用,找到它在内存中的位置并执行它定义的任何代码。array_push()

使用不需要函数调用,并且直接在数据结构中实现加法。因此,在添加大量数据时,使用起来要快得多,资源效率也高得多。$arr[] = 'some value';$arr[]


答案 2

您可以使用array_push在一次射击中将多个元素添加到数组中,

例如:array_push($array_name, $element1, $element2,...)

其中$element 1、$element 2,...是要添加到数组中的元素。

但是,如果您一次只想添加一个元素,那么其他方法(即使用$array_name[])应该是首选。