判断步骤:1、利用array_intersect_assoc()函数比较两个数组的键名和键值,语法“array_intersect_assoc(数组1,数组2)”,会返回一个交集数组;2、利用“===”运算符判断交集数组是否为空,语法“交集数组===[]”,如果交集数组为空则两数组没有交集,如果交集数组不为空则两数组有交集。
本教程操作环境: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('content-type:text/html;charset=utf-8'); function f($a1,$a2){ $result=array_intersect_assoc($a1,$a2); var_dump($result); if($result===[]){ echo '两数组没有交集'; }else{ echo '两数组有交集'; } } $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 '$a1 和 $a2对比:'; f($a1,$a2); echo '<hr>'; var_dump($a2); var_dump($a3); echo '$a2 和 $a3对比:'; f($a2,$a3); ?>
推荐学习:《PHP视频教程》
以上是php怎么判断两数组是否有交集的详细内容。更多信息请关注PHP中文网其他相关文章!