arrays array赋值 - 如何将元素添加到PHP中的空数组?




array函数 foreach (7)

如果我在PHP中定义一个数组,例如(我没有定义它的大小):

$cart = array();

我是否只需使用以下内容向其添加元素?

$cart[] = 13;
$cart[] = "foo";
$cart[] = obj;

不要PHP中的数组有一个add方法,例如cart.add(13)


Answers

请记住,此方法会覆盖第一个数组,因此只有在您确定的情况下才使用!

$arr1 = $arr1 + $arr2;

( 见来源 )


array_push和你描述的方法都可以工作。

<?php
$cart = array();
$cart[] = 13;
$cart[] = 14;
// etc
?>

是相同的:

<?php
$cart = array();
array_push($cart, 13);
array_push($cart, 14);

// Or 
$cart = array();
array_push($cart, 13, 14);
?>

最好不要使用array_push ,只使用你的建议。 这些功能只会增加开销。

//We don't need to define the array, but in many cases it's the best solution.
$cart = array();

//Automatic new integer key higher than the highest 
//existing integer key in the array, starts at 0.
$cart[] = 13;
$cart[] = 'text';

//Numeric key
$cart[4] = $object;

//Text key (assoc)
$cart['key'] = 'test';

你可以使用array_push 。 它将元素添加到数组的末尾,就像堆栈中一样。

你也可以这样做:

$cart = array(13, "foo", $obj);


当我们想要添加基于零的元素索引的元素时,我想这也会起作用:

// adding elements to an array with zero-based index
$matrix= array();
$matrix[count($matrix)]= 'element 1';
$matrix[count($matrix)]= 'element 2';
...
$matrix[count($matrix)]= 'element N';

var a = [23, 45, 12, 67];
a.unshift(34);
console.log(a); // [34, 23, 45, 12, 67]





php arrays variables