Quick Reference
The PHP array_udiff_uassoc() function compares the keys/values of two or more arrays, and returns the entries from array1 not in the other array(s).
This function uses two user-defined functions for comparison. The key is used in the first function and the value is used in the second.
Both the keys and values are compared. Both must be a match.
<?php
function my_function_key($a, $b) {
if ($a===$b) {
return 0;
}
return ($a>$b)?1:-1;
}
function my_function_value($a, $b) {
if ($a===$b) {
return 0;
}
return ($a>$b)?1:-1;
}
$a1 = array('Car 1' => 'Lamborghini', 'Car 2' => 'Alfa Romeo', 'Car 5' => 'Maserati');
$a2 = array('Car 1' => 'Lamborghini', 'Car 2' => 'Ferrari', 'Car 3' => 'Maserati');
$result = array_udiff_uassoc($a1, $a2, 'my_function_value', 'my_function_key');
print_r($result);
?>
Note
Arrays count starting from zero NOT one. So item 1 is position [0], item 2 is position [1], and item 3 is position [2] … and so on.
Output
Array ( [Car 2] => Alfa Romeo [Car 5] => Maserati )
Syntax
array_udiff_uassoc(array1, array2, array3, ..., myfunc_key, myfunc_value)
Parameters
Parameter | Description |
---|---|
array1 | The array to compare from (required) |
array2 | The array to compare against (required) |
array3, ... | Additional arrays to compare against |
myfunc_key | The name of the user-defined function that compares the array keys; a string that defines a callable comparison function; the comparison function must return an integer <, =, or > than 0 if the first argument is <, =, or > than the second argument (required) |
myfunc_value | The name of the user-defined function that compares the array values; a string that defines a callable comparison function; the comparison function must return an integer <, =, or > than 0 if the first argument is <, =, or > than the second argument (required) |
PHP Notes:
- When using PHP, single or double quotation marks are acceptable and work identically to one another; choose whichever you prefer, and stay consistent
- Arrays count starting from zero NOT one; so item 1 is position [0], item 2 is position [1], and item 3 is position [2] … and so on
We’d like to acknowledge that we learned a great deal of our coding from W3Schools and TutorialsPoint, borrowing heavily from their teaching process and excellent code examples. We highly recommend both sites to deepen your experience, and further your coding journey. We’re just hitting the basics here at 1SMARTchicken.