Compare the keys and values of two arrays, using a built-in function to compare the keys and a user-defined function to compare the values, and return the differences.
<?php function myfunction($a,$b) { if ($a===$b) { return 0; } return ($a>$b)?1:-1; } $a1=array(“a”=>“red”,“b”=>“green”,“c”=>“blue”); $a2=array(“a”=>“red”,“b”=>“blue”,“c”=>“green”); $result=array_udiff_assoc($a1,$a2,“myfunction”); print_r($result); ?> |
The array_udiff_assoc()
function compares the keys and values of two or more arrays and returns the differences.
Note: It uses a built-in function to compare the keys and a user-defined function to compare the values.
This function compares the keys and values of the arrays and returns an array containing entries from the first array that are not found in any of the subsequent arrays.
array_udiff_assoc(array1, array2, array3, …, myfunction) |
Parameter |
Description |
array1 |
Required. The array to compare. |
array2 |
Required. An array to compare with. |
array3,… |
Optional. Additional arrays to compare with. |
myfunction |
Required. A string defining a callable comparison function that returns an integer less than, equal to, or greater than 0 to indicate if the first argument is less than, equal to, or greater than the second argument. |
Return Value: |
Returns an array with the entries from array1 that are not found in any of the other arrays. |
PHP Version: |
5+ |