دالة 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));
؟

运行实例

التعريف والاستخدام

تستخدم دالة array_replace_recursive() القيم من المجموعة الثانية لتعويض القيم في المجموعة الأولى بشكل تدريجي.

إشارة:إشارة إلى

يمكنك تقديم مجموعة واحدة أو عدة مجموعات إلى الدالة. array1 إذا كان المفتاح موجودًا في المجموعة الأولى array2، فإنها ستكون أيضًا موجودة في المجموعة الثانية array1 في المجموعة الأولى array2 في المجموعة الثانية array1، فإنها ستظل كما هي. array2، ولكنها غير موجودة في المجموعة الأولى array1، فإنها ستظل كما هي. array1 في هذا العنصر. إذا تم تمرير عدة مجموعات استبدال، سيتم معالجتها بالترتيب، ويتم تغطية قيم المجموعات السابقة بقيم المجموعات اللاحقة.

التعليقات:إذا لم يتم تحديد مفتاح لكل مجموعة، فإن سلوك هذه الدالة سيكون متشابهًا مع array_replace() دالة.

النحو

array_replace_recursive(array1,array2,array3...)
参数 描述
array1 必需。规定数组。
array2 可选。指定要替换 array1 的值的数组。
array3,... 可选。指定多个要替换 array1array2, ... 的值的数组。后面数组的值将覆盖之前数组的值。

技术细节

返回值: 返回被替换的数组,如果发生错误则返回 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);
؟

运行实例