判斷步驟: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中文網其他相關文章!