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 — Calcula la diferencia de matrices usando callback function on the keys for comparison
Descripción
array_diff_ukey() regresa una matriz conteniendo todos los valores de array1 que tienen llaves que no están presentes en cualquiera de los otros argumentos. Note que la asociatividad es preservada. Esta función es como array_diff() excepto en que la comparación es hecha en las llaves en ligar de en los valores.
Esta comparación es hecha por una función proveída por el usuario. Debe regresar un entero menor que, igual a, o mayor que cero si la primera llave es considerada respectivamente menor que, igual a, o mayor que la segunda llave.
Example #1 Ejemplo array_diff_ukey()
<?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'));
?>
El resultado del ejemplo seria:
array(2) { ["red"]=> int(2) ["purple"]=> int(4) }
Note: Note por favor que esta función solo revisa una dimensión en una matriz con n dimensiones. Por supuesto puede revisar más profundamente usando la forma array_diff_ukey($array1[0], $array2[0], 'callback_func');.
Vea tambié 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() y array_intersect_ukey().
array_diff_ukey
15-Dec-2007 01:41
