Example
Compare the keys and values of two arrays, and return the matches (using a user-defined key comparison function):
<?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);
?>
Run example »
Definition and Usage
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!
This function compares the keys and values of two or more arrays, and return an array that contains the entries from array1 that are present in array2, array3, etc.
Syntax
array_intersect_uassoc(array1,array2,array3...,myfunction)
Parameter | Description |
---|---|
array1 | Required. The first array is the array that the others will be compared with |
array2 | Required. An array to be compared with the first array |
array3,... | Optional. An array to be compared with the first array |
myfunction | Required. A string that define a callable comparison function. The comparison function must return an integer <, =, or > than 0 if the first argument is <, =, or > than the second argument |
Technical Details
Return Value: | Returns an array containing the entries from array1 that are present in all of the other arrays |
---|---|
PHP Version: | 5+ |
More Examples
Example 1
Compare the keys and values of three arrays (use a user-defined function to compare the keys), 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);
?>
Run example »
< PHP Array Reference