Рекомендуемый курс:
PHP функция array_replace_recursive()
Пример
<?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)); ?>
Рекурсивно использовать значения второго массива ($a2) для замены значений первого массива ($a1):
Определение и использование
array_replace_recursive() функция рекурсивно использует значения массивов, переданных позже, для замены значений первого массива.Совет:
Вы можете передать функции массив, или несколько массивов. array1 , если ключ существует в первом массиве array2, также存在于 втором массиве array1 , значение из первого массива array2 значение будет заменено значением из второго массива. array1, он останется без изменений. Если ключ существует в втором массиве array2, но не существует в первом массиве array1, то он будет оставлен без изменений. Если ключ существует только в первом массиве array1 создать этот элемент. Если передается несколько массивов для замены, они будут обрабатываться по порядку, значения массивов, переданных позже, будут перекрывать значения массивов, переданных ранее.
Комментарий:Если для каждого массива не указан ключ, поведение функции будет эквивалентно array_replace() функция.
грамматика
array_replace_recursive(array1,array2,array3...)
...) | Параметры |
---|---|
array1 | Описание |
array2 | Обязателен. Определить массив. array1 значений массивов. Опционально. Указать массивы для замены |
array3,... | Опционально. Указать несколько массивов для замены array1 и array2Массив значений ... . Значения массивов, следующих за ним, будут перекрывать значения предыдущих массивов. |
Технические детали
Возврат значений: | Возвращает замененный массив, если возникает ошибка, возвращает 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); ?>