首页 >后端开发 >PHP问题 >php怎么判断两数组是否有交集

php怎么判断两数组是否有交集

青灯夜游
青灯夜游原创
2022-07-15 20:29:134002浏览

判断步骤:1、利用array_intersect_assoc()函数比较两个数组的键名和键值,语法“array_intersect_assoc(数组1,数组2)”,会返回一个交集数组;2、利用“===”运算符判断交集数组是否为空,语法“交集数组===[]”,如果交集数组为空则两数组没有交集,如果交集数组不为空则两数组有交集。

php怎么判断两数组是否有交集

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

在php中,可以利用array_intersect_assoc() 函数和“===”运算符来判断两数组是否有交集。

实现步骤:

步骤1:利用array_intersect_assoc()函数比较数组,求两数组的交集

array_intersect_assoc() 函数用于比较两个(或更多个)数组的键名和键值,并返回包含交集元素的数组(一个交集数组)。

$result=array_intersect_assoc($a1,$a2);

步骤2:利用“===”运算符判断交集数组是否为空

$result===[]

如果交集数组为空则两数组没有交集,如果交集数组不为空则两数组有交集。

完整示例代码:

<?php
header(&#39;content-type:text/html;charset=utf-8&#39;);   
function f($a1,$a2){
	$result=array_intersect_assoc($a1,$a2);
	var_dump($result);
	if($result===[]){
		echo &#39;两数组没有交集&#39;;
	}else{
		echo &#39;两数组有交集&#39;;
	}
}


$a1=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow");
$a2=array("a"=>"red","b"=>"green","c"=>"blue");
$a3=array("a"=>"1","b"=>"2","d"=>"blue");
var_dump($a1);
var_dump($a2);
echo &#39;$a1 和 $a2对比:&#39;;
f($a1,$a2);
echo &#39;<hr>&#39;;

var_dump($a2);
var_dump($a3);
echo &#39;$a2 和 $a3对比:&#39;;
f($a2,$a3);
?>

1.png

推荐学习:《PHP视频教程

以上是php怎么判断两数组是否有交集的详细内容。更多信息请关注PHP中文网其他相关文章!

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