实现方法:1、用“array_unique(数组)”分别给两个数组去除重复值;2、用“array_merge_recursive(去重数组1,去重数组2)”合并两个去重后的数组即可,若有键名相同的情况,则将该键名对应的键值合并为一个子数组。
本教程操作环境:windows7系统、PHP8.1版、DELL G3电脑
php将两个数组去掉重复值后合并的方法
步骤1、使用array_unique()函数分别给两个数组去除重复值
array_unique() 函数移除数组中的重复的值,并返回结果数组。
当几个数组元素的值相等时,只保留第一个元素,其他的元素被删除。
<?php $arr1=array("a"=>"red","b"=>"green","c"=>"red"); $arr2=array("1"=>"Cat","2"=>"Dog","3"=>"Cat","4"=>"rabbit"); $Narr1=array_unique($arr1); $Narr2=array_unique($arr2); var_dump(array_unique($Narr1)); var_dump(array_unique($Narr2)); ?>
步骤2、使用array_merge_recursive()函数合并两个去重后的数组
array_merge_recursive() 函数用于把一个或多个数组合并为一个数组。
该函数与 array_merge() 函数之间的不同是在处理两个或更多个数组元素有相同的键名的情况。array_merge_recursive() 不会进行键名覆盖,而是将多个相同键名的值递归组成一个数组。
即合并数组时,遇到相同的键将该键中值合并为一个子数组
<?php $arr1=array("a"=>"red","b"=>"green","c"=>"red"); $arr2=array("1"=>"Cat","2"=>"Dog","3"=>"Cat","4"=>"rabbit"); $Narr1=array_unique($arr1); $Narr2=array_unique($arr2); var_dump(array_unique($Narr1)); var_dump(array_unique($Narr2)); var_dump(array_merge_recursive($Narr1,$Narr2)); ?>
推荐学习:《PHP视频教程》
以上是php怎么将两个数组去掉重复值后合并的详细内容。更多信息请关注PHP中文网其他相关文章!