当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


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。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。