定义和用法

array_diff_assoc() 函数用于比较两个(或更多个)数组的键名和键值 ,并返回差集。

该函数比较两个(或更多个)数组的键名和键值,并返回一个差集数组,该数组包括了所有在被比较的数组(array1)中,但是不在任何其他参数数组(array2array3 等等)中的键名和键值。

  1. 返出的为array1与其它数组比较后的差异值,并不会返出其它数组里面的值

语法

array_diff_assoc(array1,array2,array3...);
参数描述
array1必需。与其他数组进行比较的第一个数组。
array2必需。与第一个数组进行比较的数组。
array3,...可选。与第一个数组进行比较的其他数组。

技术细节

返回值:返回数组,该数组包含所有在 array1 中,但是不在任何其他参数数组(array2array3 等等)中的键名和键值。
PHP 版本:4.3+

demo

$array1 = [11,22,33,44,55];
$array2 = ['test1','test2','test3','test4','test5'];
$array3 = ['test1','test2','test3','test4','test6','trrs'=>['test1','test2'],'trrsd'=>'test1','22'];

show(array_diff_assoc($array3,$array2, $array1));

##输出
Array
(
    [4] => test6
    [trrs] => Array
        (
            [0] => test1
            [1] => test2
        )

    [trrsd] => test1
    [5] => 22
)