比較方法:1、用“array_diff(數組1,數組2)”,只比較數組值;2、用“array_diff_assoc(數組1,數組2)”,鍵和值都比較。這兩種方法比較數組後,都會傳回一個差集數組;如果差集數組為空數組,則兩數組相同,反之不相同。
本教學操作環境:windows7系統、PHP8.1版、DELL G3電腦
php比較2個數組是否不同(不一樣)
在PHP中,可以使用array_diff()或array_diff_assoc()函數來比較2個數組,看看兩個數組是否不同。
array_diff()或array_diff_assoc()函數在比較數組後,會傳回一個差集數組;如果差集數組為空數組,則兩個數組相同,反之不相同。
下面我們來具體看看:
方法1:使用array_diff()比較2個陣列是否不同
array_diff() 函數用於比較兩個陣列的值,並傳回差集。語法格式:
array_diff(array1,array2);
傳回值:
傳回一個差集數組,該數組包括了所有在被比較的數組(array1)中,但不在任何其他參數數組(array2 等等)中的值。
範例:
<?php $a1=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow"); $a2=array("e"=>"red","f"=>"black","g"=>"purple"); $a3=array("a"=>"red","b"=>"black","h"=>"purple"); $result=array_diff($a1,$a2); var_dump($result); $result=array_diff($a2,$a3); var_dump($result); ?>
#方法2:使用array_diff_assoc()函數
# array_diff_assoc() 函數用於比較兩個(或更多)陣列的鍵名和鍵值 ,並傳回差集。語法格式:
array_diff_assoc(array1,array2);
該函數比較兩個(或更多)數組的鍵名和鍵值,並傳回一個差集數組,該數組包括了所有在被比較的數組(array1)中,但是不在任何其他參數數組(array2)中的鍵名和鍵值。
範例:
<?php $a1=array("a"=>"red","b"=>"black","g"=>"purple"); $a2=array("e"=>"red","f"=>"black","g"=>"purple"); $a3=array("a"=>"red","b"=>"blue","h"=>"yellow"); $a4=array("e"=>"red","f"=>"black","g"=>"purple"); $result=array_diff_assoc($a1,$a2); var_dump($result); $result=array_diff_assoc($a2,$a3); var_dump($result); $result=array_diff_assoc($a2,$a4); var_dump($result); ?>
推薦學習:《PHP影片教學》
以上是php怎麼比較2個陣列是否不同的詳細內容。更多資訊請關注PHP中文網其他相關文章!