PHP array_diff_uassoc() Function | PHP Array Functions

The array_diff_uassoc() function compares two or more arrays and returns the differences, using a user-defined function to compare the keys.

Key Features of array_diff_uassoc()

Syntax of array_diff_uassoc()

Syntax


array array_diff_uassoc(array $array1, array $array2, callable $key_compare_func, ...$arrays);

Example Using array_diff_uassoc()

The following example demonstrates how array_diff_uassoc() works:

Example


function key_compare_func($key1, $key2) {
   return strcmp($key1, $key2);
}
        
$array1 = ["a" => "PHP", "b" => "JavaScript", "c" => "Python"];
$array2 = ["a" => "PHP", "c" => "Python", "d" => "Ruby"];
        
$result = array_diff_uassoc($array1, $array2, "key_compare_func");
print_r($result);
        

Output

Array ( [b] => JavaScript )

PHP array_diff_ukey() Function

The array_diff_ukey() function is an inbuilt PHP function that compares the keys of two or more arrays using a user-defined callback function and returns the differences. This function was introduced in PHP 5.2.0.

Example 1

Syntax


array array_diff_ukey ( array $array1 , array $array2 [, array $... ], callable $key_compare_func )
                    

Parameters

Parameter Description Is Compulsory
array1 The first array to compare. Compulsory
array2 The array to compare against. Compulsory
... Additional arrays to compare against. Optional
key_compare_func A callback function to compare the keys. Compulsory

Return Values

The array_diff_ukey() function returns an array containing all the elements from array1 whose keys are not present in any of the other arrays after being compared using the user-defined callback function.


PHP Example


<?php  
$array1 = array("a" => "red", "b" => "green", "c" => "blue");  
$array2 = array("a" => "yellow", "d" => "pink");  
function compareKeys($key1, $key2) {
    return $key1 === $key2 ? 0 : 1;
}  
print_r(array_diff_ukey($array1, $array2, "compareKeys"));  
?>
                    

Output

Array
(
[b] => green
[c] => blue
)

PHP Example


<?php  
$array1 = array("a" => "apple", "b" => "banana", "c" => "cherry");  
$array2 = array("b" => "banana", "d" => "dragonfruit");  
$array3 = array("c" => "cherry", "e" => "elderberry");  
function compareKeys($key1, $key2) {
    return $key1 === $key2 ? 0 : 1;
}  
print_r(array_diff_ukey($array1, $array2, $array3, "compareKeys"));  
?>
                    

Output

Array
(
[a] => apple
)