PHP 数组函数

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 ) )