Compare the key names and key values of the two arrays (use a user-defined function to compare the key names) and return the difference:
<?phpfunction 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_diff_uassoc($a1,$a2,"myfunction");print_r($result);?>The array_diff_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 a user-defined function to compare key names!
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_diff_uassoc( array1,array2,array3...,myfunction );
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 | Required. 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+ |
Compare the key names and key values of the three arrays (use a user-defined function to compare the key names) and return the difference:
<?phpfunction 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=a rray("e"=>"yellow","a"=>"red","d"=>"blue");$result=array_diff_uassoc($a1,$a2,$a3,"myfunction");print_r ($result);?>