当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


PHP array_merge_recursive()用法及代码示例


array_merge_recursive()是PHP中的内置函数,用于将两个或多个数组递归合并为一个数组。此函数用于将两个或多个数组的元素或值合并到一个数组中。合并的方式是将一个数组的值附加到前一个数组的末尾。如果给定数组中有相同的键,则为键分配一个值,该值具有一个数组,该数组由具有相同键的值组成。

注意:该函数与array_merge()的不同之处在于,在具有相同键的多个数组的情况下,array_merge()函数从所有数组中获取最后一个数组值,但是在array_merge_recursive()中,该键被分配了一个数组,该数组由具有以下各项的所有数组值组成相同的键。

用法:


array_merge_recursive($array1, $array2, $array3...$arrayn)

参数:该函数可以采用任意数量的数组作为参数,并以逗号(,)分隔,我们需要合并这些数组。第一个参数$array1是必需的。

返回值:该函数返回合并了所有数组的合并数组。合并的方式是将一个数组的值附加到前一个数组的末尾。如果给定数组中有相同的键,则将为输出数组中的键分配一个数组,该数组由具有相同键的值组成。

例子:

Input : $a1=array("a"=>"raj", "b"=>"striver");
        $a2=array("z"=>"geeks", "b"=>"articles");
Output : 
Array
(
    [a] => raj
    [b] => Array
        (
            [0] => striver
            [1] => articles
        )

    [z] => geeks
)
Explanation: "striver" and "articles" has the same 
key "b", so the key b is assigned to an array which has 
"striver" and "articles" as elements. 

Input :$a1=array("a"=>"raj", "b"=>"striver");
       $a2=array("z"=>"geeks", "d"=>"articles");
Output :
Array
(
    [a] => raj
    [b] => striver
    [z] => geeks
    [d] => articles
)

以下示例程序旨在说明array_merge_recursive()函数:

程序1:PHP程序演示array_merge_recursive()
具有所有不同按键的函数。

<?php 
// PHP program to demonstrate array_merge_recursive()  
// function with same keys 
$a1=array("a"=>"raj", "b"=>"striver"); 
$a2=array("z"=>"geeks", "d"=>"articles"); 
  
print_r(array_merge_recursive($a1, $a2)); 
?>

输出:

Array
(
    [a] => raj
    [b] => striver
    [z] => geeks
    [d] => articles
)

程序2:PHP程序,用相同的键演示array_merge_recursive()函数。

<?php 
// PHP program to demonstrate array_merge_recursive()  
// function with same keys 
$a1=array("a"=>"raj", "b"=>"striver"); 
$a2=array("z"=>"geeks", "b"=>"articles"); 
  
//function call 
print_r(array_merge_recursive($a1, $a2)); 
?>

输出:

Array
(
    [a] => raj
    [b] => Array
        (
            [0] => striver
            [1] => articles
        )

    [z] => geeks
)

参考:
http://php.net/manual/en/function.array-merge-recursive.php



相关用法


注:本文由纯净天空筛选整理自Striver大神的英文原创作品 PHP | array_merge_recursive() Function。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。