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

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

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

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

判断步骤:

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

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

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

<?php
header('content-type:text/html;charset=utf-8');   
$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('content-type:text/html;charset=utf-8');   
$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视频教程》

hmoban主题是根据ripro二开的主题,极致后台体验,无插件,集成会员系统
自学咖网 » php怎么比较多个数组中是否有重复值