Как добавить элементы в пустой массив в PHP?

Если я определяю массив в PHP, например (не определяю его размер):

$cart = array(); 

Я просто добавляю к нему элементы, используя следующее:

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

Не массивы на PHP имеют метод add, например, cart.add(13) ?

И 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'; 

Основываясь на моем опыте, вы отлично разбираетесь, когда ключи не важны:

 $cart = array(); $cart[] = 13; $cart[] = "foo"; $cart[] = obj; 

Вы можете использовать array_push . Он добавляет элементы в конец массива, как в стеке.

Вы могли бы сделать это так:

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

ПОМНИТЕ, этот метод перезаписывает первый массив, поэтому используйте только тогда, когда вы уверены!

 $arr1 = $arr1 + $arr2; 

( см. источник )

Это называется array_push: http://il.php.net/function.array-push

Когда нужно добавить элементы с нулевым индексированием элементов, я думаю, это тоже будет работать:

 // 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';