首页 >后端开发 >PHP问题 >php中两个数组怎么去除重复值

php中两个数组怎么去除重复值

青灯夜游
青灯夜游原创
2022-07-26 17:26:093407浏览

去除步骤:1、利用array_intersect()获取两个数组的重复值(交集元素),语法“array_intersect(原数组1,(原数组2)”,会返回一个交集数组;2、使用array_diff()分别将两个原数组和交集数组进行对比,获取差集,即删除重复值,获取不重复的元素,语法“array_diff(原数组1,交集数组)”和“array_diff(原数组2,交集数组)”。

php中两个数组怎么去除重复值

本教程操作环境:windows7系统、PHP8.1版、DELL G3电脑

怎么去除两个数组中都存在的重复值,即交集元素?

例:有这样两个数组:

$arr1=array(1,2,3,4,5,6,7,8,9);
$arr2=array(2,4,6,8,10,12,14,16);

在两个数组中都存在的重复值是:

2、4、6、8

怎么将这几个重复值去除呢?

在php中,可以利用array_intersect()和array_diff()函数来删除两数组的重复值。

实现步骤:

步骤1:利用array_intersect()函数获取两数组的重复值(交集元素)

array_intersect()函数可以比较两个数组的值,并返回包含重复值的交集数组。

$intersect=array_intersect($arr1,$arr2);
var_dump($intersect);

1.png

步骤2:利用array_diff()函数删除两个数组的重复值(交集元素)

使用array_diff()函数分别将两个数组和交集数组进行对比,获取差集(删除重复值,获取不重复的元素)。

$diff1=array_diff($arr1,$intersect);
$diff2=array_diff($arr2,$intersect);
echo "删除交集元素后的两数组:";
var_dump($diff1);
var_dump($diff2);

2.png

对比一下:

3.png4.png

说明:

array_diff() 函数用于比较两个(或更多个)数组的值,并返回差集。

该函数比较两个(或更多个)数组的值(key=>value 中的 value),并返回一个差集数组,该数组包括了所有在被比较的数组(array1)中,但是不在任何其他参数数组(array2 )中的值。

推荐学习:《PHP视频教程

以上是php中两个数组怎么去除重复值的详细内容。更多信息请关注PHP中文网其他相关文章!

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