php中可以将两个或多个数组进行合并,生成一个合并后的新数组。这篇博文就讲一下关于PHP中合并数组的函数 array_merge()。
PHP array_merge() 函数
array_merge():可以把两个或多个数组合并为一个新的数组。
语法:
array_merge(array1,array2,array3...)
参数:
array1:要合并的数组1
array2:要合并的数组2
array3:要合并的数组3
例:PHP将两个数组合并成一个数组
示例代码:
<?php $arr1 = array('上海','广州','杭州'); $arr2 = array('山东','北京','黑龙江'); print_r(array_merge($arr1,$arr2)); ?>
打印结果:
Array ( [0] => 上海 [1] => 广州 [2] => 杭州 [3] => 山东 [4] => 北京 [5] => 黑龙江 )
例:php多个数组合并
示例代码:
<?php //免费资源网 //http://www.freexyz.cn $arr1 = array('shanghAI','guanzhou','hangzhou'); $arr2 = array('shandong','beijing','heilongjiang'); $arr3 = array('xiamen','fujian','shanxi'); print_r(array_merge($arr1,$arr2,$arr3)); ?>
打印结果:
Array ( [0] => shanghai [1] => guanzhou [2] => hangzhou [3] => shandong [4] => beijing [5] => heilongjiang [6] => xiamen [7] => fujian [8] => shanxi )
例:PHP合并多个带有非数字键名的数组
示例代码1:
<?php //免费资源网 //http://www.freexyz.cn $arr1 = array('a'=>'shanghai','b'=>'guanzhou','c'=>'hangzhou'); $arr2 = array('d'=>'shandong','e'=>'beijing','f'=>'heilongjiang'); print_r(array_merge($arr1,$arr2)); ?>
打印结果:
Array ( [a] => shanghai [b] => guanzhou [c] => hangzhou [d] => shandong [e] => beijing [f] => heilongjiang )
注意:两个含有非数字键名的数组合并后,新数组的各个元素的键名保持不变。
示例代码2:
<?php //免费资源网 //http://www.freexyz.cn $arr1 = array('a'=>'aaaa','b'=>'bbbb','c'=>'cccc'); $arr2 = array('c'=>'dddd','e'=>'eeee','f'=>'ffff'); print_r(array_merge($arr1,$arr2)); ?>
打印结果:
Array ( [a] => aaaa [b] => bbbb [c] => dddd [e] => eeee [f] => ffff )
注意:如果多个要合并的数组中含有相同元素的键名,则最后的元素会覆盖其他元素
例:php合并带有数字键名的数组
代码1:
<?php //免费资源网 //http://www.freexyz.cn $arr1 = array(2=>'aaaa',1=>'bbbb',5=>'cccc'); $arr2 = array(4=>'dddd',6=>'eeee',7=>'ffff'); print_r(array_merge($arr1,$arr2)); ?>
打印结果:
Array ( [0] => aaaa [1] => bbbb [2] => cccc [3] => dddd [4] => eeee [5] => ffff )
代码2:
<?php //免费资源网 //http://www.freexyz.cn $arr1 = array(2=>'aaaa',1=>'bbbb',5=>'cccc'); print_r(array_merge($arr1)); ?>
打印结果:
Array ( [0] => aaaa [1] => bbbb [2] => cccc )
注:array_merge() 函数在处理带有数字键名的数组时,返回的新数组的键名都是数字,其键名以 0 开始进行重新索引