PHP.nl

array_diff_uassoc

array_diff_uassoc

Computes the difference of arrays with additional index check which is performed by a user supplied callback function

array **array_diff_uassoc** array $array array $arrays callable $key_compare_func

Compares against and returns the difference. Unlike the array keys are used in the comparison. array``arrays``array_diff

Unlike a user supplied callback function is used for the indices comparison, not internal function. array_diff_assoc

arrayThe array to compare from

arraysArrays to compare against

key_compare_func

Returns an containing all the entries from that are not present in any of the other arrays. array``array

Voorbeeld: example

 In this example the 
 pair is present in both arrays and thus it is not in the output from the
 function. Unlike this, the pair 
 is in the output because the key of  is
 automatically assigned to  in the first array,
 whereas it is assigned to  in the second array as the
 key  is already taken by .
`"a" => "green"``0 => "red"``"red"``0``1``0``yellow`
<?php
function key_compare_func($a, $b)
{
    return $a <=> $b;
}

$array1 = array("a" => "green", "b" => "brown", "c" => "blue", "red");
$array2 = array("a" => "green", "yellow", "red");
$result = array_diff_uassoc($array1, $array2, "key_compare_func");
print_r($result);
?>
Array
(
    [b] => brown
    [c] => blue
    [0] => red
)

The equality of 2 indices is checked by the user supplied callback function.

Opmerking: > This function only checks one dimension of an n-dimensional array. It is possible to check deeper dimensions by using, for example, . array_diff_uassoc($array1[0], $array2[0], "key_compare_func");

array_diff``array_diff_assoc``array_udiff``array_udiff_assoc``array_udiff_uassoc``array_intersect``array_intersect_assoc``array_uintersect``array_uintersect_assoc``array_uintersect_uassoc