PHP8.1.21版本已发布
vue8.1.21版本已发布
jquery8.1.21版本已发布

php怎么将两个数组去掉重复值后合并

青灯夜游
青灯夜游 原创
2022-05-26 16:38:12 1777浏览

实现方法: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));
?>

1.png

步骤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));
?>

2.png

推荐学习:《PHP视频教程

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。