пример
Заменить значения первого массива со значениями из второго массива рекурсивно:
<?php
$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() функция заменяет значения первого массива со значениями от следования массивов рекурсивно.
Tip: Вы можете присвоить один массив функции, или столько , сколько вам нравится.
Если ключ от array1 существует в массив2 значения из array1 будут заменены значениями из массив2. Если ключ существует только в array1, она останется, как есть. Если ключ существует в массив2, а не в array1, он будет создан в array1. Если используются несколько массивов, значения из более поздних массивов будут перезаписаны предыдущие.
Примечание: Если вы не указываете ключ для каждого массива, эта функция будет вести себя точно так же , как array_replace() функции.
Синтаксис
array_replace_recursive( array1,array2,array3... )
параметр | Описание |
---|---|
array1 | Необходимые. Определяет массив |
array2 | Необязательный. Определяет массив , который заменит значения array1 |
array3,... | Необязательный. Задает большее количество массивов , чтобы заменить значения array1 и массив2 и т.д. Значения из поздних массивов будут перезаписывать предыдущие. |
Технические подробности
Возвращаемое значение: | Возвращает замененный массив, или NULL, если произошла ошибка |
---|---|
PHP версии: | 5.3.0+ |
Еще примеры
Пример 1
Несколько массивов:
<?php
$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() :
<?php
$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 массив Ссылка