PHP合并数组我们可以使用array_merge()函数,array_merge()函数返回一个联合的数组。所得到的数组以第一个输入数组参数开始,按后面数组参数出现的顺序依次追加。

array array_merge (array array1 array2…,arrayN)

下面是一个PHP array_merge合并数组的例子:

<?php
$fruits = array(\"apple\",\"banana\",\"pear\");
$numbered = array(\"1\",\"2\",\"3\");
$cards = array_merge($fruits, $numbered);
print_r($cards);
// 输出结果:
// Array ( [0] => apple [1] => banana [2] => pear [3] => 1 [4] => 2 [5] => 3 )
?>

 

array_merge_recursive(),将两个数组合并在一起,注意,与array_merge()函数是不一样的,array_merge()的两个数组有重复项时会覆盖掉,而array_merge_recursive()则不会。array_merge_recursive()语法:

array array_merge_recursive(array array1,array array2[…,array arrayN])

array_merge_recursive实例:

<?php
$fruit1 = array(\"apple\" => \"red\", \"banana\" => \"yellow\");
$fruit2 = array(\"pear\" => \"yellow\", \"apple\" => \"green\");
$result = array_merge_recursive($fruit1, $fruit2);
print_r($result);
// 输出结果:
// Array ( [apple] => Array ( [0] => red [1] => green ) [banana] => yellow [pear] => yellow )
?>

现在apple 指向一个数组,由两个颜色值组成的索引数组,还有一种比较怪的做法就是合并数组

 

总结:

array_merge() 函数会将相同的键名覆盖,而array_merge_recursive() 不会进行键名覆盖,而是将多个相同键名的值递归组成一个数组。

收藏 打印