array_diff_uassoc()function是PHP中的内置函数, 用于通过用户定义的函数比较键来获取一个或多个数组之间的差。此函数将一个或多个数组之间的键和值进行比较, 并从第一个数组中返回其余数组中不存在的元素。根据提供给该功能的用户定义功能比较按键。
注意:此功能不同于PHP | array_diff_assoc()函数就像在array_diff_assoc()函数中一样, 根据一些内部函数来比较键, 而在array_diff_uassoc()函数中, 则根据作为参数传递给它的用户定义函数来比较键。
语法如下:
array_diff_uassoc($array1, $array2, $array3, ..., $arrayn, user_function)
【PHP array_diff_uassoc()函数用法介绍】参数:此函数接受数组列表作为参数, 并接受用户定义的函数(用于键的比较)。
- list_of_array:此函数获取由空格分隔的数组列表, 我们要从中查找差异。在上面的语法中, 数组列表为$ array1, $ array2, $ array3, …, $ arrayn。该列表必须包含至少两个数组, 否则将引发警告。
- user_function:这是一个字符串类型参数, 代表用于键比较的用户定义函数的名称。该函数返回一个整数, 该整数是较小, 较大或相等如果第一个参数是0, 则为0更大, 更小或相等而不是第二个论点。
例子:
Input : $a1=array(10=>
"striver", 20=>
"raj", 30=>
"geek")
$a2=array(20=>
"striver", 10=>
"raj", 30=>
"geek")
function user_function($a, $b)
{
if ($a===$b)
{
return 0;
}
return ($a>
$b)?1:-1;
}Output: Array
(
[10] =>
striver
[20] =>
raj
)Explanation:Since user_function returns 0 when keys
are equal and 1 and -1 when greater and less respectively.
So, the elements with unequal keys are in the output array.
下面的程序说明了PHP中的array_diff_uassoc()函数:
程序1:
<
?php
// PHP program to illustrate the
// array_diff_uassoc() function // user defined function that returns 0 if
// $array1's keys are equal to any other
// input array, else returns 1 if greater, // or -1 if smaller
function user_function( $a , $b )
{
if ( $a === $b )
{
return 0;
}
return ( $a >
$b )? 1: -1;
}// Input Arrays
$a1 = array (10=>
"striver" , 20=>
"raj" , 30=>
"geek" );
$a2 = array (20=>
"striver" , 10=>
"raj" , 30=>
"geek" );
$result = array_diff_uassoc ( $a1 , $a2 , "user_function" );
print_r( $result );
?>
输出如下:
Array
(
[10] =>
striver
[20] =>
raj
)
程序2:
<
?php
// PHP program to illustrate the
// array_diff_uassoc() function // user defined function that returns 1 if
// $array1's keys are equal to any other
// input array, else returns 1 if greater, // or 0 if smaller
function user_function( $a , $b )
{
if ( $a === $b )
{
return 1;
}
return ( $a >
$b )? 1: 0;
}// Input Arrays
$a1 = array (10=>
"striver" , 20=>
"raj" , 30=>
"geek" );
$a2 = array (20=>
"striver" , 10=>
"raj" , 30=>
"geek" );
$result = array_diff_uassoc ( $a1 , $a2 , "user_function" );
print_r( $result );
?>
:
输出如下:
Array
(
[20] =>
raj
[30] =>
geek
)
参考
:
http://php.net/manual/en/function.array-diff-uassoc.php
推荐阅读
- 算法设计(将所有零移动到数组末尾详细代码实现)
- JavaScript日期Date对象函数参考
- 35款最佳免费音乐制作软件应用推荐合集(你最喜欢哪个())
- C语言中的wait系统调用详细指南
- Perl构造函数和析构函数用法指南
- 在Python中使用JSON数据经典指南
- JavaScript删除运算符delete用法介绍
- 数据结构(Python元组用法详细指南)
- 亚马逊面试体验|s414(对于SDET-1)