array_diff_key()函數(shù)使用鍵名比較計算數(shù)組的差集,將array1的密鑰與array2,array3 ...等的鍵進行比較,并返回具有差異的數(shù)組。 在array1中可用而在array2,array3等中不可用的鍵。 此函數(shù)類似于array_diff()函數(shù),只不過比較是基于鍵而不是值進行的。
array array_diff_key ( array $array1, array $array2 [, array $...] );
序號 | 參數(shù)及說明 |
---|---|
1 | array1(必填) 將與第一個數(shù)組進行比較。 |
2 | array2(必填) 它是一個要與第一個數(shù)組進行比較的數(shù)組 |
3 | array3(可選) 它是一個要與第一個數(shù)組進行比較的數(shù)組 |
array_diff_key() 返回一個數(shù)組,該數(shù)組包括了所有出現(xiàn)在 array1 中但是未出現(xiàn)在任何其它參數(shù)數(shù)組中的鍵名的值。
此函數(shù)在PHP版本5.1.0中首次引入
此示例返回4和5值,因為前三個鍵(0、1和2)在兩個數(shù)組中相同,盡管它們的值不同
<?php $input1 = array(1, 2, 3, 4, 5); $input2 = array(4, 5, 6); $result = array_diff_key($input1, $input2); print_r($result); ?>測試看看?/?
輸出結果:
Array ( [3] => 4 [4] => 5 )
此示例返回空數(shù)組,因為array_diff_key()比較鍵而不是值,因為它發(fā)現(xiàn)兩個數(shù)組都具有相同的鍵,盡管值不同,所以不會發(fā)現(xiàn)任何差異,結果返回空數(shù)組
<?php $input4 = array(1, 2, 3); $input5 = array(4, 5, 6); $result = array_diff_key($input4, $input5); print_r($result); ?>測試看看?/?
輸出結果:
Array ( )
以下示例示范使用array_diff_key()數(shù)組函數(shù)-
<?php $input1 = array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow", "f"=>"yellow"); $input2 = array("a"=>"red","b"=>"green","c"=>"blue"); $result = array_diff_key($input1, $input2); print_r($result); ?>測試看看?/?
輸出結果:
Array ( [d] => yellow [f] => yellow )