# array_diff_key

(PHP 5 >= 5.1.0, PHP 7, PHP 8)

array_diff_key — Calcula la diferencia entre arrays empleando las claves para la comparación

### Descripción

array_diff_key(array `$array1`, array `$array2`, array `$...` = ?): array

Compara las claves de `array1` con las claves de `array2` y devuelve la diferencia. Esta función es como array_diff() excepto que la comparación se hace con las claves en lugar de con los valores.

### Parámetros

`array1`

  El array a comparar

`array2`

  Un array con el que comparar

`...`

  Más arrays con los que comparar

### Valores devueltos

Devuelve un array que contiene todas las entradas de `array1` cuyas claves están ausente en ninguno de los otros arrays.

### Ejemplos

Ejemplo #1 Ejemplo de array_diff_key()

Las dos claves de los de pares `clave => valor` son consideradas iguales solo si `(string) $clave1 === (string) $clave2` . En otras palabras, se ejecuta una comprobación de tipos estricta de tal forma que las representaciones de tipo string deben ser las mismas.

`<?php
$array1 = array('blue' => 1, 'red' => 2, 'green' => 3, 'purple' => 4);
$array2 = array('green' => 5, 'yellow' => 7, 'cyan' => 8);
var_dump(array_diff_key($array1, $array2));
?>`

El resultado del ejemplo sería:

    array(3) {
      ["blue"]=>
      int(1)
      ["red"]=>
      int(2)
      ["purple"]=>
      int(4)
    }

`<?php
$array1 = array('blue' => 1, 'red' => 2, 'green' => 3, 'purple' => 4);
$array2 = array('green' => 5, 'yellow' => 7, 'cyan' => 8);
$array3 = array('blue' => 6, 'yellow' => 7, 'mauve' => 8);
var_dump(array_diff_key($array1, $array2, $array3));
?>`

El resultado del ejemplo sería:

    array(2) {
      ["red"]=>
      int(2)
      ["purple"]=>
      int(4)
    }

### Notas

> Nota:

> Esta función solamente comprueba una dimensión de un array n-dimensional. Se pueden comprobar dimensiones más profundas mediante `array_diff_key($array1[0], $array2[0]);`.

### Ver también

- array_diff() - Calcula la diferencia entre arrays
- array_udiff() - Computa la diferencia entre arrays, usando una llamada de retorno para la comparación de datos
- array_diff_assoc() - Calcula la diferencia entre arrays con un chequeo adicional de índices
- array_diff_uassoc() - Calcula la diferencia entre arrays con un chequeo adicional de índices que se realiza por una función de devolución de llamada suministrada por el usuario
- array_udiff_assoc() - Computa la diferencia entre arrays con una comprobación de indices adicional, compara la información mediante una función de llamada de retorno
- array_udiff_uassoc() - Computa la diferencia entre arrays con una verificación de índices adicional, compara la información y los índices mediante una función de llamada de retorno
- array_diff_ukey() - Calcula la diferencia entre arrays usando una función de devolución de llamada en las keys para comparación
- array_intersect() - Calcula la intersección de arrays
- array_intersect_assoc() - Calcula la intersección de arrays con un chequeo adicional de índices
- array_intersect_uassoc() - Calcula la intersección de arrays con una comprobación adicional de índices, los cuales se comparan con una función de retrollamada
- array_intersect_key() - Calcula la intersección de arrays usando sus claves para la comparación
- array_intersect_ukey() - Calcula la intersección de arrays usando una función de devolución de llamada en las claves para la comparación