array_diff_assoc()
函数用于将一个数组与另一个或多个数组进行比较并返回差异,它会比较键名和键值。
简单来说,array_diff_assoc() 函数比较两个或多个数组的键和值,并返回一个差异数组,其中在第一个数组存在,其余数组不存在的元素。
此函数是在 PHP 4.3 中引入的。
语法
array_diff_assoc(array1,array2,array3...);
参数
参数 | 描述 | 必须/可选 |
---|---|---|
array1 | 要比较的第一个数组 | 必须 |
array2 | 要比较的第二个数组 | 必须 |
array3 | 要比较的更多数组.. | 可选 |
返回值
返回一个数组,其中包含 第一个数组存在,其余数组不存在的元素。
例子1
<?php
$a1=array("1"=>"red","2"=>"green","3"=>"blue","4"=>"black");
$a2=array("1"=>"red","2"=>"blue","3"=>"green");
$result=array_diff_assoc($a1,$a2);
print_r($result);
?>
输出:
Array ( [2] => green [3] => blue [4] => black )
例子2
<?php
$fruit1 = array( "a"=>"orange", "b"=>"mango", "c"=>"banana");
$fruit2 = array( "a"=>"orange", "b"=>"apple", "c"=>"banana");
print_r(array_diff_assoc($fruit1, $fruit2));
?>
输出:
Array ( [b] => mango )
例子3
<?php
$fruit1 = array( "a"=>"orange", "b"=>"mango", "c"=>"banana");
$fruit2 = array( "a"=>"banana", "b"=>"apple", "c"=>"orange");
print_r(array_diff_assoc($fruit1, $fruit2));
?>
输出:
Array ( [a] => orange [b] => mango [c] => banana )
例子4
<?php
$a1=array(
array(
"1"=>"red"
),
array(
"2"=>"green"
),
array(
"3"=>"blue"
),
array(
"4"=>"black"
)
);
$a2=array(
array(
"1"=>"red"
),
array(
"2"=>"blue"
),
array(
"3"=>"green"
)
);
$result=array_diff_assoc($a1,$a2);
print_r($result);
?>
输出:
Array( [3]=> Array ( [4] => black ) )