Compare the values of two arrays using a user-defined function to determine equality, and return the matching values.
<?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”=>“blue”,“b”=>“black”,“e”=>“blue”); $result=array_uintersect($a1,$a2,“myfunction”); print_r($result); ?> |
The array_uintersect() function compares the values of two or more arrays and returns the matches.
Note: It uses a user-defined function to compare the values.
This function identifies the entries in the first array that are present in all the subsequent arrays and returns those matching entries.
array_uintersect(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 specifying a callable comparison function. The function must return an integer less than, equal to, or greater than 0, depending on whether the first argument is less than, equal to, or greater than the second argument. |
Return Value: |
Returns an array with entries from array1 that are present in all the other arrays. |
PHP Version: |
5+ |
Compare the values of three arrays using a user-defined function, and return the matching values.
<?php function myfunction($a,$b) { if ($a===$b) { return 0; } return ($a>$b)?1:-1; } $a1=array(“a”=>“red”,“b”=>“green”,“c”=>“blue”,“yellow”); $a2=array(“A”=>“red”,“b”=>“GREEN”,“yellow”,“black”); $a3=array(“a”=>“green”,“b”=>“red”,“yellow”,“black”); $result=array_uintersect($a1,$a2,$a3,“myfunction”); print_r($result); ?> |