Основные отличия функции array_merge() от оператора + в PHP при объединении массивов:
- Для ассоциативных массивов. 2 Функция array_merge() перезаписывает значения первого массива значениями второго, если ключи совпадают. 2 Оператор + не будет перезаписывать значения первого массива значениями второго, если ключи совпадают. 2
- Для индексированных массивов. 2 Оператор + полностью игнорирует второй массив и возвращает первый массив в исходном виде. 2 Функция array_merge() объединяет все массивы и возвращает новый массив. 2
Кроме того, при несовпадающих численных индексах array_merge() добавляет элементы, индексы не сохраняются, идёт переидексация массива, начиная с 0. 3 Оператор + добавляет элементы, индексы остаются, как были. 3