PHP array_replace_recursive()Функции
Полный справочник по массивам PHP
Примеры
Рекурсивно используйте значения второго массива ($a2) для замены значений первого массива ($a1):
$a1=array("a"=>array("red"),"b"=>array("green","blue"),);
$a2=array("a"=>array("yellow"),"b"=>array("black"));
print_r(array_replace_recursive($a1,$a2));
?>
Запустить пример »
Определение и использование
Функция array_replace_recursive() рекурсивно заменяет значения первого массива значениями последующих массивов.
Совет:Вы можете передать один массив или несколько массивов в функцию.
Если ключ существует и в первом массиве array1, и во втором массиве array2, значение в первом массиве array1 будет заменено значением во втором массиве array2. Если ключ существует только в первом массиве array1, он останется без изменений. Если ключ существует во втором массиве array2, но отсутствует в первом массиве array1, этот элемент будет создан в первом массиве array1. Если передано несколько массивов для замены, они обрабатываются последовательно, и значения последующих массивов перезапишут значения предыдущих массивов.
Примечание:Если для каждого массива не указан ключ, поведение этой функции будет таким же, как array_replace()функция.
Синтаксис
| Параметр | Описание |
|---|---|
| array1 | Обязательный. Задаёт массив. |
| array2 | Необязательный. Указывает массив для замены вarray1массива значений. |
| array3,... | Необязательный. Указывает несколько массивов для замены вarray1иarray2, ...массива значений. Значения последующих массивов перезапишут значения предыдущих массивов. |
Технические детали
| Возвращаемое значение: | Возвращает заменённый массив или NULL, если возникает ошибка. |
|---|---|
| Версия PHP: | 5.3.0+ |
Другие примеры
Пример 1
Несколько массивов:
$a1=array("a"=>array("red"),"b"=>array("green","blue"));
$a2=array("a"=>array("yellow"),"b"=>array("black"));
$a3=array("a"=>array("orange"),"b"=>array("burgundy"));
print_r(array_replace_recursive($a1,$a2,$a3));
?>
Запустить пример »
Пример 2
Разница между array_replace() и array_replace_recursive():
$a1=array("a"=>array("red"),"b"=>array("green","blue"),);
$a2=array("a"=>array("yellow"),"b"=>array("black"));
$result=array_replace_recursive($a1,$a2);
print_r($result);
$result=array_replace($a1,$a2);
print_r($result);
?>
Запустить пример »
Полный справочник по массивам PHP Другие расширения