當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


PHP array_diff()用法及代碼示例


array_diff()是PHP中的內置函數,用於計算兩個或多個數組之間的差。此函數根據一個或多個數組之間的元素值計算差值,並以新數組的形式返回差值。此函數本質上返回第一個數組中存在的所有其他數組中不存在的所有條目。

用法:

array_diff($array1, $array2, $array3, ...,$arrayn)

參數:該函數可以采用任意數量的數組作為需要比較的參數。


Return Type:此函數將參數中的第一個數組與其餘數組進行比較,並返回包含$array1中所有其他數組中不存在的所有條目的數組。

例子:

Input :  $array1 = ('a', 'b', 'c');
         $array2 = ('a', 'd', 'e');
         $array3 = ('a', 'b', 'f');
         array_diff($array1, $array2, $array3); 
Output :
         Array
         (
           [2] => c
         )

Input : $array1 = ('a', 'b', 'a');
        $array2 = ('a', 'd', 'e');
Output :
         Array
         (
           [1] => b
         )

以下示例程序旨在說明array_diff()在PHP中的工作:

<?php 
// PHP code to illustrate the working of array_diff() 
function Difference($array1, $array2, $array3){ 
    return(array_diff($array1, $array2, $array3)); 
} 
  
// Driver Code 
$array1 = array('a', 'b', 'c', 'd', 'e', 'f'); 
$array2 = array('a', 'b', 'g', 'h'); 
$array3 = array('a', 'f', 'i'); 
print_r(Difference($array1, $array2, $array3)); 
?>

輸出:

Array
(
    [2] => c
    [3] => d
    [4] => e
)

注意事項

  • 它比較元素的字符串表示形式。也就是說,array_diff()的1和“ 1”相等。
  • 第一個數組中元素的重複次數無關緊要。也就是說,如果一個元素在$array1中出現3次,而在其他數組中僅出現1次,則在輸出中將忽略該元素在第一個數組中的所有3次出現。
  • 對於多維數組,我們需要分別比較每個維度。例如:-$array1 [2],$array2 [2]等。

參考: http://php.net/manual/en/function.array-diff.php



相關用法


注:本文由純淨天空篩選整理自Chinmoy Lenka大神的英文原創作品 PHP | array_diff() function。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。