對比方法: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影片教學》
以上是php怎麼比較兩個陣列是否有相同元素的詳細內容。更多資訊請關注PHP中文網其他相關文章!