array_diff_key() Function in PHP

Compares array against arrays and returns the difference. Unlike array_diff() the array keys are used in the comparison. Unlike array_diff_assoc() a user supplied callback function is used for the indices comparison, not internal function.

array_diff_uassoc($array1, $array2, callable $key_compare_func)

Note: This function only checks one dimension of a n-dimensional array. Of course you can check deeper dimensions by using, for example, array_diff_uassoc($array1[0], $array2[0], "key_compare_func");.

Example

  <?php

function key_compare_func($a, $b)
{
    if ($a === $b) {
        return 0;
    }
    return ($a > $b)? 1:-1;
}

$array1 = array("a" => "green", "b" => "brown", "c" => "blue", "red");
$array2 = array("a" => "green", "yellow", "red");
$result = array_diff_uassoc($array1, $array2, "key_compare_func");
print_r($result);

  ?>
  
  
Output:
Array
(
    [b] => brown
    [c] => blue
    [0] => red
)

Comments