(PHP 5 >= 5.1.0)
array_intersect_key — Calcula la intersección de arrays usando las keys para la comparación
$array1
, array $array2
[, array $ ...
] )
array_intersect_key() retorna un array
que contiene todos los valores de array1
los cuales tienen keys que están presentes en todos los argumentos.
array1
Array con las keys maestras para verificar.
array2
Un array contra el cual comparar las keys.
array
Una lista variable de arrays para comparar.
Retorna un array asociativo que contiene todas las entradas de
array1
los cuales tienen keys que están presentes en todos
los argumentos.
Ejemplo #1 Ejemplo de array_intersect_key()
<?php
$array1 = array('blue' => 1, 'red' => 2, 'green' => 3, 'purple' => 4);
$array2 = array('green' => 5, 'blue' => 6, 'yellow' => 7, 'cyan' => 8);
var_dump(array_intersect_key($array1, $array2));
?>
El resultado del ejemplo sería:
array(2) { ["blue"]=> int(1) ["green"]=> int(3) }
En el ejemplo se puede ver que sólo las keys 'blue'
y 'green' están presentes en ambos arrays y por lo tanto
son retornadas. Se observa también que los valores para las claves
'blue' y 'green' difieren entre
los dos arrays. Sigue ocurriendo emparejamiento porque sólo las keys son verificadas.
Los valores retornados son aquellos del array1
.
Las dos keys de los pares key => value son consideradas iguales sólo si (string) $key1 === (string) $key2 . En otras palabras una verificación de tipo estricto es ejecutada, por lo cual la representación de la cadena debe ser la misma.