在PHP手册,( array_push )说..
如果你使用array_push()将一个元素添加到阵列中,最好使用$数组[] =,因为这样没有调用函数的开销。
例如 :
$arr = array();
array_push($arr, "stackoverflow");
print_r($arr);
VS
$arr[] = "stackoverflow";
print_r($arr);
我不明白为什么有很大的区别。
在PHP手册,( array_push )说..
如果你使用array_push()将一个元素添加到阵列中,最好使用$数组[] =,因为这样没有调用函数的开销。
例如 :
$arr = array();
array_push($arr, "stackoverflow");
print_r($arr);
VS
$arr[] = "stackoverflow";
print_r($arr);
我不明白为什么有很大的区别。
当你调用PHP中的功能(如array_push()
也有开销的号召,为PHP有来查找函数的引用,发现其在内存中的位置,并执行它定义任何代码。
使用$arr[] = 'some value';
不需要函数调用,并实现了除直入的数据结构。 因此,加入了大量的数据时,它是快了很多,和资源有效地使用$arr[]
你可以在一杆,以阵列使用array_push增加超过1元,
如array_push($array_name, $element1, $element2,...)
凡$部件1,$ element2的,......将被添加到数组元素。
但是,如果你想只有一个元素一次添加,那么其他的方法(即使用$ ARRAY_NAME [])应该是首选。
所不同的是在下面的线“因为这种方式有没有调用函数的开销。”
array_push()
如果第一个参数不是数组将提高一个警告。 这不同于$var[]
在其中创建一个新的阵列行为。
你应该总是使用$array[]
如果可能的话,因为随着箱子指出没有开销的函数调用。 因此,它比函数调用更快一点。
array_push -推的一个或多个元件到数组的末尾
记的单词“ 一个或多个元素到端 ”要做到这一点使用$arr[]
你会得到阵列的最大尺寸
解释:1。第一个声明变量阵列。
2.第二array_push方法用于推入数组变量的字符串。
3.最后将打印出结果。
4.第二种方法是直接存储在数组中的字符串。
5.数据被打印在数组的值中使用的print_r方法。
这两者是相同的
两者是相同的,但array_push使得环在它的参数,该参数是一个数组并执行$阵列[] = $元件
没有人说,但只array_push推到阵列,其中$阵列[指数]可在任何给定的索引插入值的端部的元件。 很大的区别。
我知道这是一个古老的答案,但它可能会有所帮助别人知道两者之间的另一个区别是,如果你有每个环路2/3以上的值添加到一个数组它的速度更快的使用方法:
for($i = 0; $i < 10; $i++){
array_push($arr, $i, $i*2, $i*3, $i*4, ...)
}
代替:
for($i = 0; $i < 10; $i++){
$arr[] = $i;
$arr[] = $i*2;
$arr[] = $i*3;
$arr[] = $i*4;
...
}
编辑-忘记关闭托架的for
有条件