Funciones de Arrays
PHP Manual

array_intersect_ukey

(PHP 5 >= 5.1.0, PHP 7)

array_intersect_ukeyCalcula la intersección de arrays usando una función de devolución de llamada en las claves para la comparación

Descripción

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

array_intersect_ukey() retorna un array que contiene todos los valores de array1 que tengan tengan que estén presentes en todos los argumentos.

Parámetros

array1

Array inicial para la comparación de los arrays.

array2

Primer array con el que comparar las claves.

...

Una lista variable de argumentos de tipo array con la que comparar claves.

key_compare_func

La función de comparación debe devolver un entero menor, igual o mayor que cero si el primer argumento se considera que sea respectivamente menor, igual o mayor que el segundo. Observe que antes de PHP 7.0.0 este entero debía estar en el rango de -2147483648 a 2147483647.

int callback ( mixed $a, mixed $b )

Valores devueltos

Retorna los valores de array1 cuyas claves existen en todos los argumentos.

Ejemplos

Ejemplo #1 Ejemplo de array_intersect_ukey()

<?php
function comparar_claves($clave1$clave2)
{
    if (
$clave1 == $clave2)
        return 
0;
    else if (
$clave1 $clave2)
        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_intersect_ukey($array1$array2'comparar_claves'));
?>

El resultado del ejemplo sería:

array(2) {
  ["blue"]=>
  int(1)
  ["green"]=>
  int(3)
}

En el ejemplo se puede ver que sólo las claves 'blue' y 'green' están presentes en ambos arrays, por lo que son devueltas. Observe también que los valores de las claves 'blue' y 'green' difieren entre los dos arrays. Sigue habiendo coincidencia porque solamente se verifican las claves. Los valores devueltos son los de array1.

Ver también


Funciones de Arrays
PHP Manual