Note, also that when you are using a callback function you can use the text-placeholders as this function relies on the retval of the function you give.
So, instead of 1,0,-1 you can use TRUE and FALSE if using only two options.
Just thought it may help you
array_diff_ukey
(PHP 5 >= 5.1.0)
array_diff_ukey — Computes the difference of arrays using a callback function on the keys for comparison
Description
array array_diff_ukey ( array $array1, array $array2 [, array $ ..., callback $key_compare_func] )array_diff_ukey() returns an array containing all the values of array1 that have keys that are not present in any of the other arguments. Note that the associativity is preserved. This function is like array_diff() except the comparison is done on the keys instead of the values.
This comparison is done by a user supplied callback function. It must return an integer less than, equal to, or greater than zero if the first key is considered to be respectively less than, equal to, or greater than the second.
Příklad 177. array_diff_ukey() example
<?php
function key_compare_func($key1, $key2)
{
if ($key1 == $key2)
return 0;
else if ($key1 > $key2)
return 1;
else
return -1;
}
$array1 = array('blue' => 1, 'red' => 2, 'green' => 3, 'purple' => 4);
$array2 = array('green' => 5, 'blue' => 6, 'yellow' => 7, 'cyan' => 8);
var_dump(array_diff_ukey($array1, $array2, 'key_compare_func'));
?>
Výše uvedený příklad vypíše:
array(2) {
["red"]=>
int(2)
["purple"]=>
int(4)
}
Poznámka: Please note that this function only checks one dimension of a n-dimensional array. Of course you can check deeper dimensions by using array_diff_ukey($array1[0], $array2[0], 'callback_func');.
See also array_diff(), array_udiff() array_diff_assoc(), array_diff_uassoc(), array_udiff_assoc(), array_udiff_uassoc(), array_diff_key(), array_intersect(), array_intersect_assoc(), array_intersect_uassoc(), array_intersect_key() and array_intersect_ukey().
array_diff_ukey
15-Dec-2007 01:41
