查询

array_merge_recursive()函数—用法及示例

「 递归地合并一个或多个数组 」


函数名称:array_merge_recursive()

函数描述:array_merge_recursive() 函数使用递归地合并一个或多个数组。与array_merge()函数不同的是,当两个数组的键名相同时,array_merge_recursive() 函数会递归地将元素合并在一起,而不是简单地覆盖它们。

用法:

array_merge_recursive ( array $array1 , array $array2 [, array $... ] ) : array

参数:

  • $array1: 必需,要合并的第一个数组。
  • $array2: 必需,要合并的第二个数组。
  • $...: 可选,要合并的更多数组。

返回值: 该函数返回一个合并后的数组。

示例:

$array1 = array('color' => array('favorite' => 'red'), 5);
$array2 = array(10, 'color' => array('favorite' => 'green', 'blue'));

$result = array_merge_recursive($array1, $array2);
print_r($result);

输出结果:

Array
(
    [color] => Array
        (
            [favorite] => Array
                (
                    [0] => red
                    [1] => green
                )

            [0] => blue
        )

    [0] => 5
    [1] => 10
)

以上示例中,两个数组都包含一个相同的键名 "color",array_merge_recursive() 函数递归地合并了这些键,将它们的值作为一个新的数组元素返回。同时,其他键名 "5" 和 "10" 也被合并到结果数组中。

注意:如果两个数组具有相同的字符串键,则递归会发生在这些键所对应的值上。如果两个数组具有相同的键名且键名为数字,则第一个数组中的值将被替换,而第二个数组中的值将被追加到结果数组的末尾。

补充纠错
上一个函数: array_merge()函数
下一个函数: array_multisort()函数
热门PHP函数
分享链接