Слияние (конкатенация) массивов - это операция создания массива, состоящего из элементов нескольких других массивов. Слияние массивов - это очень опасная операция, поскольку результат слияния подчиняется своей логике, забыв о которой можно потерять данные. Слияние массивов реализуется при помощи оператора "+" или с помощью функции array_merge(). Слияние списков может осуществляться только с помощью функции array_merge().
Предположим, мы имеем два массива:
$A = array("1"=>"первый", "2"=>"Второй");
$B = array("1"=>"первый", "2"=>"Второй");
Теперь сольем данные два массива в один массив $C:
$C = $A + $B;
Оператор "+" для массивов не коммутативен. Это означает, что $A + $B не равно $B + $A.
В результате рассмотренного примера мы получим массив $C следующего вида:
"1"=>"Первый", "2"=>"Второй", "3"=>"Третий", "4"=>"Четвертый"
А в результате $B + $A мы получим такой массив:
"3"=>"Третий", "4"=>"Четвертый", "1"=>"Первый", "2"=>"Второй"
При слиянии списков такой метод не работает. Поясним данный факт на примере:
Предположим, у нас есть два массива:
$A = array(10,11,12);
$B = array(13,14,15);
В результате слияния списков $A и $B ( $A + $B ) мы получим: 10,11,12. А это совсем не тот результат, который мы хотели получить... Связано это с тем, что при слиянии списков с одинаковыми индексами в результирующем массиве остается элемент первого массива, причем на том же месте. В таком случае нам необходимо использовать функциюarray_merge()