array_merge_recursive
Объединяет массивы, сливая вложенные массивы с одинаковыми ключами.
Синтаксис
array_merge_recursive(array ...$arrays): arrayПараметры
| Параметр | Тип | Описание |
|---|---|---|
| ...$arrays | array | Объединяемые массивы. |
Возвращаемое значение
arrayНовый массив.
Примеры
Вложенные списки складываются:
<?php
$a = ['tags' => ['php'], 'title' => 'Post'];
$b = ['tags' => ['sql'], 'title' => 'Draft'];
echo json_encode(array_merge_recursive($a, $b));Результат:
{"tags":["php","sql"],"title":["Post","Draft"]}Примечания
Одинаковые скалярные значения не заменяются, а собираются в массив — как title в примере. Чтобы заменять, используйте array_replace_recursive().
См. также
- array_merge — Объединяет один или несколько массивов в один.
- array_replace — Заменяет значения массива значениями с теми же ключами из других массивов.
- array_combine — Создаёт массив из двух списков: ключей и значений.
В учебнике
- Функции для массивов — Обработка массивов в PHP без циклов — array_map, array_filter, array_reduce, поиск и срезы.