array_diff_ukey

array_diff_ukey

(PHP 5 >= 5.1.0RC1)

array_diff_ukey -- Calcula la diferencia de matrices usando callback function on the keys for comparison

Descripci贸n

array array_diff_ukey ( array array1, array array2 [, array ..., callback key_compare_func] )

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.

Ejemplo 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)
}

Nota: 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().