您好,登錄后才能下訂單哦!
本文小編為大家詳細介紹“php如何比較兩個數組鍵值的不同”,內容詳細,步驟清晰,細節處理妥當,希望這篇“php如何比較兩個數組鍵值的不同”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學習新知識吧。
在php中,可以使用array_diff()函數來比較兩個數組鍵值(value)的不同;該函數用于比較兩個(或更多個)數組的值(value),并返回包含不同值的差集數組,語法“array_diff(array1,array2...);”;差集數組包括了所有在被比較數組(array1)中,但是不在任何其他參數數組(array2)中的值。
本教程操作環境:windows7系統、PHP8.1版、DELL G3電腦
比較兩個數組的不同,php提供了三種方法:
array_diff()
array_diff_key()
array_diff_assoc()
其中,想要只比較兩個數組鍵值(value),獲取不同元素,就需要用到array_diff()函數。
array_diff() 函數--只比較鍵值(value)
array_diff() 函數用于比較兩個(或更多個)數組的值,并返回包含不同值的差集數組。
該函數比較兩個(或更多個)數組的值(key=>value 中的 value),并返回一個差集數組,該數組包括了所有在被比較的數組(array1)中,但是不在任何其他參數數組(array2 或 array3 等等)中的值。
array_diff(array1,array2);
參數 | 描述 |
---|---|
array1 | 必需。與其他數組進行比較的第一個數組。 |
array2 | 必需。與第一個數組進行比較的數組。 |
返回值:返回一個差集數組,該數組包括了所有在被比較的數組(array1)中,但是不在任何其他參數數組(array2 或 array3 等等)中的值。
示例:比較兩個數組的鍵值(value),并返回差集數組
<?php header('content-type:text/html;charset=utf-8'); $arr1=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow"); $arr2=array("e"=>"red","f"=>"green","g"=>"blue"); var_dump($arr1); var_dump($arr2); $result=array_diff($arr1,$arr2); echo "兩個數組的不同值:"; var_dump($result); ?>
擴展知識:另兩個比較函數
1、array_diff_key():只比較鍵名(key)
array_diff_key() 函數用于比較兩個(或更多個)數組的鍵名 ,并返回差集。
array_diff_key(array1,array2...);
示例:
<?php header("Content-type:text/html;charset=utf-8"); $arr1=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow"); $arr2=array("a"=>"orange","b"=>"green","e"=>"red","r"=>"yellow"); var_dump($arr1); var_dump($arr2); echo "兩個數組的不同值:"; $result=array_diff_key($arr1,$arr2); var_dump($result); ?>
而在上面的示例,$arr1數組和$arr2數組中有兩個鍵名不相同,以數組$arr1為準就會得到值“"c"=>"blue"
”和“"d"=>"yellow"
”,因此輸出的結果為:
2、array_diff_assoc():比較鍵名(key)和鍵值(value)
array_diff_assoc() 函數用于比較兩個(或更多個)數組的鍵名和鍵值 ,并返回差集。
array_diff_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"=>"orange","b"=>"green","e"=>"red","r"=>"yellow"); var_dump($arr1); var_dump($arr2); echo "兩個數組的不同值:"; $result=array_diff_assoc($arr1,$arr2); var_dump($result); ?>
上例中,$arr1數組和$arr2數組進行比較,有三個不相同的元素,然后以數組$arr1為準會得到值“"a"=>"red"
”、“"c"=>"blue"
”、“"d"=>"yellow"
”,因此輸出的結果為:
讀到這里,這篇“php如何比較兩個數組鍵值的不同”文章已經介紹完畢,想要掌握這篇文章的知識點還需要大家自己動手實踐使用過才能領會,如果想了解更多相關內容的文章,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。