数组函数

PHP array_replace_recursive() 函数

主题:PHP 数组参考上一页|下一页

说明

array_replace_recursive() 函数递归地将数组中的值替换为其他数组中的值。 该函数主要用于更深的数组(数组中的数组)。

下表总结了该函数的技术细节。

返回值: 返回被替换的数组,如果发生错误则返回NULL
版本: PHP 5.3.0+

语法

array_replace_recursive() 函数的基本语法如下:

array_replace_recursive(array1, array2, ...)

下面的例子展示了 array_replace_recursive() 函数的作用。

<?php
// 样本数组
$array1 = array("pets"=>array("cat"), "wilds"=>array("wolf", "fox"));
$array2 = array("pets"=>array("dog", "horse"), "wilds"=>array("tiger"));

// 递归执行数组替换
$result = array_replace_recursive($array1, $array2);
print_r($result);
?>

array_replace_recursive() 函数将第一个数组的值替换为以下数组中的值,这样,如果第一个数组中的键存在于第二个数组中,则其值将被替换 通过第二个数组中的值。 如果键存在于第二个数组中,而不是第一个数组中,它将在第一个数组中创建。 如果一个键只存在于第一个数组中,它将保持原样。

如果为替换传递了多个数组,它们将按顺序处理,后面的数组会覆盖前面的值。 而且,由于这个函数是递归的,它将递归到数组中并对内部值应用相同的过程。 请参阅底部的更多示例


参数

array_replace_recursive() 函数接受以下参数。

参数 说明
array1 必填。 指定替换元素的数组。
array2 可选。 指定要从中提取元素的数组。
... 可选。 指定要从中提取元素的更多数组。 后面数组中的值会覆盖之前的值。

更多示例

这里有更多示例显示 array_replace_recursive() 函数的基本工作原理:

以下示例显示了如果传递多个数组进行替换会发生什么。

<?php
// 样本数组
$array1 = array("pets"=>array("cat"), "wilds"=>array("wolf", "fox"));
$array2 = array("pets"=>array("dog", "horse"), "wilds"=>array("tiger"));
$array3 = array("pets"=>array("rabbit"), "wilds"=>array("lion"));

// 递归执行数组替换
$result = array_replace_recursive($array1, $array2, $array3);
print_r($result);
?>
Advertisements