Compare the keys and values of two arrays and return the matches, using a user-defined function to compare the keys.
<?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(“d”=>“red”,“b”=>“green”,“e”=>“blue”); $result=array_intersect_uassoc($a1,$a2,“myfunction”); print_r($result); ?> |
The array_intersect_uassoc()
function compares the keys and values of two or more arrays and returns the matches.
Note: This function uses a user-defined function to compare the keys.
It returns an array containing entries from array1
that are also present in array2
, array3
, and so on.
array_intersect_uassoc(array1, array2, array3, …, myfunction) |
Parameter |
Description |
array1 |
Required. The first array is used as the reference for comparison with the other arrays. |
array2 |
Required. An array to compare against the first array. |
array3,… |
Optional. Additional arrays to compare with the first array. |
myfunction |
Required. A string specifying a callable comparison function. This function must return an integer less than, equal to, or greater than 0 if the first argument is less than, equal to, or greater than the second argument. |
Return Value: |
Returns an array with entries from |
PHP Version: |
5+ |
Compare the keys and values of three arrays with a user-defined function for key comparison, and return the matches.
<?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”=>“green”,“d”=>“blue”); $a3=array(“e”=>“yellow”,“a”=>“red”,“d”=>“blue”); $result=array_intersect_uassoc($a1,$a2,$a3,“myfunction”); print_r($result); ?> |