PHP数组合并之array_merge和数组相加

1,313 阅读1分钟

在我们实际的PHP项目开发中,数组合并是常用的操作之一。array_merge() 函数可以把一个或多个数组合并为一个数组。如果两个或更多个数组元素有相同的键名,则最后的元素会覆盖其他元素。如果是整数下标则会重新排,不会覆盖。数组相加则是先出现的保留,后出现的舍弃。如果有相同的整数下表则也会先出现的保留,后出现的舍弃,然后再重新排列下标。下面PHP程序员雷雪松举个例子来讲解一下PHP数组合并之array_merge和数组相加。

programmer1 = array("a"=>"PHP程序员","b"=>"JAVA程序员","IOS程序员");programmer2 = array("c" =>"安卓程序员","d" => "ASP程序员","前端","a"=> "DBA"); programmer3 = array_merge(programmer1,programmer2);programmer4 = programmer1 +programmer2; var_dump($programmer3); array(6) {

["a"]=>

string(3) "DBA"

["b"]=>

string(13) "JAVA程序员"

[0]=>

string(12) "IOS程序员"

["c"]=>

string(15) "安卓程序员"

["d"]=>

string(12) "ASP程序员"

[1]=>

string(6) "前端"

}

var_dump($programmer4); array(5) {

["a"]=>

string(12) "PHP程序员"

["b"]=>

string(13) "JAVA程序员"

[0]=>

string(12) "IOS程序员"

["c"]=>

string(15) "安卓程序员"

["d"]=>

string(12) "ASP程序员"

}

在使用array_merge合并时,下标为a的最终结果是programmer2 中出现的DBA,programmer1和programmer2 中的数字下标则重新排列,并没有覆盖,有两个数字下标的值。而在使用两个数组相加合并时,下标为a的最终结果是programmer1 中出现的PHP程序员,整数下标只有一个$programmer1 中的IOS程序员,并且下标也会重新排列。、

我的开源商城3.0马上要发布 了,欢迎大家关注 开源地址:github.crmeb.net/u/lsq