對比方法:1、利用array_intersect_assoc()函數對比兩個數組的鍵名和鍵值,語法“array_intersect_assoc($arr1,$arr2)”,會返回一個包含相同元素的交集數組;2、利用“==”運算符判斷交集數組是否為空數組,語法“交集數組==[]”,如果交集數組為空數組,則兩個數組里沒有相同元素,如果交集數組不是空數組,則兩個數組里有相同元素。
本教程操作環境:windows7系統、PHP8.1版、DELL G3電腦
php對比兩個數組是否有相同元素的方法
步驟1:利用array_intersect_assoc()函數對比數組
array_intersect_assoc() 函數用于比較兩個數組的鍵名和鍵值,并返回兩個數組的交集(包含相同元素的數組)。
交集數組中包括了所有在被比較的數組(array1)中,同時也在任何其他參數數組(array2)中的鍵名和鍵值。
<?php header('content-type:text/html;charset=utf-8'); $arr1=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow"); $arr2=array("a"=>"red","b"=>"green","c"=>"yellow"); $arr3=array("a"=>"green","b"=>"1","c"=>"yellow"); var_dump($arr1); var_dump($arr2); var_dump($arr3); $result=array_intersect_assoc($arr1,$arr2); echo '兩個數組($arr1和$arr2)的交集:'; var_dump($result); $result=array_intersect_assoc($arr1,$arr3); echo '兩個數組($arr1和$arr3)的交集:'; var_dump($result); ?>
步驟2:利用“==”運算符判斷交集數組是否為空數組
-
如果交集數組為空數組,則兩個數組里沒有相同元素
-
如果交集數組不是空數組,則兩個數組里有相同元素
if($result==[]){ echo '兩個數組中沒有相同元素<br>'; }else{ echo '兩個數組中有相同元素<br>'; }
推薦學習:《PHP視頻教程》