📅  最后修改于: 2023-12-03 15:03:36.146000             🧑  作者: Mango
array_replace_recursive()
函数用于递归地将一个或多个数组替换为另一个数组。如果数组具有相同的字符串键,则该键的值将被另一个数组中的值替换。如果一个值是数组,而另一个值是标量,则标量将被转换为数组,并且递归地与另一个值合并。array_replace_recursive()
函数与 array_replace()
函数的区别是 array_replace_recursive()
函数会递归地对数组进行操作。
array_replace_recursive ( array $array1 , array $array2 , array $··· ) : array
$array1
:必须,要替换的数组。$array2
:必须,替换数组的值。$···
:可选,可以传入多个数组。返回一个数组,其中包含所有参数的数组替换结果。如果参数中只有一个数组,则返回该数组。
$array1 = [
"a"=>[
"b"=>1,
"c"=>2,
"d"=>['x','y','z'],
]
];
$array2 = [
"a"=>[
"b"=>10,
"d"=>[
1,
2,
],
],
"e"=>"new",
];
$result = array_replace_recursive($array1,$array2);
print_r($result);
输出结果为:
Array
(
[a] => Array
(
[b] => 10
[c] => 2
[d] => Array
(
[0] => 1
[1] => 2
)
)
[e] => new
)