array_merge() 函数把两个或多个数组合并为一个数组。
如果键名有重复,该键的键值为最后一个键名对应的值(后面的覆盖前面的)。如果数组是数字索引的,则键名会以连续方式重新索引。
注释:如果仅仅向 array_merge() 函数输入了一个数组,且键名是整数,则该函数将返回带有整数键名的新数组,其键名以 0 开始进行重新索引。
语法
array_merge(array1,array2,array3...)
参数 | 描述 |
---|---|
array1 | 必需。输入的第一个数组。 |
array2 | 必需。输入的第二个数组。 |
array3 | 可选。可指定的多个输入数组。 |
例子 1
<?php
$a1=array("a"=>"Horse","b"=>"Dog");
$a2=array("c"=>"Cow","b"=>"Cat");
print_r(array_merge($a1,$a2));
?>
输出:
Array ( [a] => Horse [b] => Cat [c] => Cow )
例子 2
仅使用一个数组参数:
<?php
$a=array(3=>"Horse",4=>"Dog");
print_r(array_merge($a));
?>
输出:
Array ( [0] => Horse [1] => Dog )
例子3:
两个数字键的数组,相同键值:
<?php
$a1=array("1"=>"Horse","2"=>"Dog");
$a2=array("1"=>"Cow","2"=>"Cat");
print_r(array_merge($a1,$a2));
输出:
Array
(
[0] => Horse
[1] => Dog
[2] => Cow
[3] => Cat
)
可以看出数字键就算有重复,也不会替代,而是重新按数字排
例子4
如果又有数字 又有字母
则字母是字母 数字按顺序
<?php
$a1=array("D"=>"Horse","A"=>"Dog");
$a2=array("1"=>"Cow","3"=>"Cat");
print_r(array_merge($a1,$a2));
输出:
Array
(
[D] => Horse
[A] => Dog
[0] => Cow
[1] => Cat
)
例子5
<?php
$a=array("d"=>"Horse",4=>"Dog");
print_r(array_merge($a));
输出:
Array
(
[d] => Horse
[0] => Dog
数字都会变成从0开始重新索引
)