PHP的这个内置函数用于获取一个或多个数组之间的差异。该函数比较一个或多个数组之间的键和值,并返回它们之间的差异。因此,该函数根据键和值比较两个数组,并返回第一个数组中存在但其他输入数组中不存在的元素。
注意:这个函数与PHP的array_diff()函数不同,后者仅使用值进行比较,但在array_diff_assoc()中,我们同时使用值和键进行比较。
语法:
array_diff_assoc(array1,array2, array3,…,arrayn)
参数:该函数可以接受任意数量的需要比较的数组作为参数。
返回值类型:该函数将参数数组的第一个数组的键和值与其余数组进行比较,并返回一个包含$array1中不存在于其他任何数组中的所有条目的数组。
示例:
Input :
$array1 = ("10"=>"RAM", "20"=>"LAXMAN", "30"=>"RAVI",
"40"=>"KISHAN", "50"=>"RISHI")
$array2 = ("10"=>"RAM", "70"=>"LAXMAN", "30"=>"KISHAN",
"80"=>"RAGHAV")
$array3 = ("20"=>"LAXMAN", "80"=>"RAGHAV")
Output :
Array
(
[30] => RAVI
[40] => KISHAN
[50] => RISHI
)
Input :
$array1 = ("10"=>"RAM", "20"=>"LAXMAN", "30"=>"RAVI",
"40"=>"KISHAN", "50"=>"RISHI")
$array2 = ("20"=>"LAXMAN", "40"=>"RAGHAV", "40"=>"KISHAN")
Output :
Array
(
[10] => RAM
[30] => RAVI
[50] => RISHI
)
下面程序说明了PHP中array_diff_assoc()函数的工作原理:
<?php
// PHP code to illustrate the
// array_diff_assoc() function
// Input Arrays
$array1 = array("10"=>"RAM", "20"=>"LAXMAN", "30"=>"RAVI",
"40"=>"KISHAN", "50"=>"RISHI");
$array2 = array("10"=>"RAM", "70"=>"LAXMAN", "30"=>"KISHAN",
"80"=>"RAGHAV");
$array3 = array("20"=>"LAXMAN", "80"=>"RAGHAV");
print_r(array_diff_assoc($array1, $array2, $array3));
?>
output:
Array
(
[30] => RAVI
[40] => KISHAN
[50] => RISHI
)