Compare the key names and key values of two arrays (use a user-defined function for comparison) and return the difference:
<?phpfunction myfunction_key($a,$b){if ($a===$b) { return 0; } return ($a>$b)?1:-1;}function myfunction_value($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","c"=> "green");$result=array_udiff_uassoc($a1,$a2,"myfunction_key","myfunction_value");print_r($result);?>The array_udiff_uassoc() function is used to compare the key names and key values of two (or more) arrays and return the difference.
Note: This function uses two user-defined functions for comparison; the first function compares key names, and the second function compares key values!
This function compares the keys and values of two (or more) arrays and returns a difference array that includes all elements in the compared array ( array1 ) but not in any of the other argument arrays ( array2 or array3 etc.) in the key name and key value.
array_udiff_uassoc( array1,array2,array3...,myfunction_key,myfunction_value )
parameter | describe |
---|---|
array1 | Required. The first array to compare with other arrays. |
array2 | Required. The array to compare to the first array. |
array3,... | Optional. Additional array to compare with the first array. |
myfunction_key | Required. The name of the user-defined function used to compare array key names. A string that defines a callable comparison function. If the first parameter <, =, > the second parameter, the corresponding comparison function must return an integer <, =, > 0. |
myfunction_value | Required. The name of the user-defined function used to compare array key values. A string that defines a callable comparison function. If the first parameter <, =, > the second parameter, the corresponding comparison function must return an integer <, =, > 0. |
Return value: | Returns a difference array that includes all keys and values that are in the compared array ( array1 ) but not in any other parameter array ( array2 or array3 , etc.). |
---|---|
PHP version: | 5+ |