首页 >后端开发 >PHP问题 >php怎么比较多个数组中是否有重复值

php怎么比较多个数组中是否有重复值

青灯夜游
青灯夜游原创
2022-07-28 19:23:232000浏览

比较步骤:1、利用array_intersect()函数比较多个数组,获取数组的重复值(交集元素),语法“array_intersect(数组1,数组2,数组3...)”,会返回一个交集数组;2、判断交集数组是否为空,语法“交集数组===[]”,如果为空则多个数组中没有重复值,如果不为空则多个数组中有重复值。

php怎么比较多个数组中是否有重复值

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

比较多个数组,判断多个数组是否有重复值,就是判断多个数组是否有交集元素。

判断步骤:

步骤1:利用array_intersect()函数比较多个数组,获取数组的重复值(交集元素)

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

该函数比较两个(或更多个)数组的值,并返回一个交集数组,该数组包含了所有在 array1 中也同时出现在所有其它参数数组中的值。

<?php
header(&#39;content-type:text/html;charset=utf-8&#39;);   
$arr1=array(0,1,2,3,4,5,6,7,8,9);
$arr2=array(0,2,4,6,8,10,12,14,16);
$arr3=array(0,2,4,8,16,32);
var_dump($arr1);
var_dump($arr2);
var_dump($arr3);
echo "多个数组的重复元素:";
$intersect=array_intersect($arr1,$arr2,$arr3);
var_dump($intersect);
?>

1.png

步骤2:判断交集数组是否为空

交集数组===[]
  • 如果为空,则多个数组中没有重复值

  • 如果不为空,则多个数组中有重复值

完整示例实现代码:

<?php
header(&#39;content-type:text/html;charset=utf-8&#39;);   
$arr1=array(0,1,2,3,4,5,6,7,8,9);
$arr2=array(0,2,4,6,8,10,12,14,16);
$arr3=array(0,2,4,8,16,32);
var_dump($arr1);
var_dump($arr2);
var_dump($arr3);
$intersect=array_intersect($arr1,$arr2,$arr3);

if($intersect===[]){
	echo "多个数组中没有重复元素";
}else{
	echo "多个数组中有重复元素";
}
?>

3.png

推荐学习:《PHP视频教程

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

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