PHP 数组函数

array_udiff_assoc( )函数是 PHP 的内置函数。

array_udiff_assoc( ) 函数使用内置函数比较两个或多个数组的键和值,并返回差异。此函数是在 PHP 5.0 中引入的。

语法

array array_udiff_assoc ( array $array1 , array $array2 [, array $... ], callable$value_compare_func ) 

参数

参数描述必须/可选
array1指定数组1必须
array2指定要与第一个数组进行比较的数组2。必须
array3指定要与第一个数组进行比较的数组3。可选
value_compare_func用户自定义的值比较函数的名称。必须

返回值

array_udiff_assoc( ) 函数返回一个数组,其中包含第一个数组存在其它数组不存在的元素。

例子1

<?php
function myfunction($x,$y)
{
     if ($x===$y)
     {
        return 0;
     }
     return ($x>$y)?1:-1;
}
$laptop1=array("a"=>"dell","b"=>"hp","c"=>"asus");
$laptop2=array("a"=>"dell","b"=>"asus","c"=>"hp");
$result=array_udiff_assoc($laptop1,$laptop2,"myfunction");
print_r($result);
?> 

输出:

Array
(
[b] =>hp
[c] =>asus
)

例子2

<?php
function userfunction($a,$b) 
{
    if ($a === $b) 
    {
        return 0;
    }
    return 1;
}

$game1 = array("a"=>"cricket","b"=>"cricket","c"=>"football");
$game2 = array("a"=>"cricket","b"=>"football","c"=>"cricket");
print_r(array_udiff_assoc($game1,$game2,"userfunction"));
?> 

输出:

Array
(
[b] => cricket
[c] => football 

例子3

<?php
function myfunction($a,$b) 
{
    return ($a==$b)?0:1;
}
$a1=array("a"=>"php","b"=>"java","c"=>"python");
$a2=array("a"=>"php","b"=>"python","c"=>"java");
print_r(array_udiff_assoc($a1,$a2,"myfunction"));
?> 

输出:

Array
(
[b] => java
[c] => python
)