Для рекурсивного объединения массивов с одинаковыми ключами в PHP можно использовать функцию arraymergerecursive. 12
Описание: функция сливает элементы одного или нескольких массивов так, что значения одного добавляются в конец предыдущего. 1 Если входные массивы содержат одинаковые строковые ключи, то значения этих ключей сливаются в массив, и это делается рекурсивно. 1 Если одно значение — массив, то функция сливает это значение с соответствующим значением в другом массиве. 1
Пример:
<?php $arr1 = ['www' => 'a', 'b', 'c', 'd', 'e']; $arr2 = ['www' => 1, 2, 3, 4, 5]; $result = array_merge_recursive($arr1, $arr2); var_dump($result); ?>
Результат: ['www' => ['a', 1], 'b', 'c', 'd', 'e', 2, 3, 4, 5]. 2
Если массивы содержат одинаковые числовые ключи, то каждое следующее значение не перезапишет исходное, а будет добавлено в конец массива. 1