Matrices
PHP Manual

array_intersect_key

(PHP 5 >= 5.1.0)

array_intersect_key — Calcula la intersección de matrices usando las llaves para la comparación

Descripción

array array_intersect_key ( array $array1 , array $array2 [, array $ ... ] )

array_intersect_key() regresa una matriz conteniendo todos los valores de array1 los cuales tienen llaves que están presentes en todos los argumentos.

Example#1 Ejemplo array_intersect_key()

<?php
$array1 
= array('azul'  => 1'rojo'  => 2'verde'  => 3'morado' => 4);
$array2 = array('verde' => 5'azul' => 6'amarillo' => 7'cyan'   => 8);

var_dump(array_intersect_key($array1$array2));
?>

El resultado del ejemplo seria:

array(2) {
  ["azul"]=>
  int(1)
  ["verde"]=>
  int(3)
})

En nuestro ejemplo puede ver que sólo las llaves 'azul' y 'verde' están presentes en ambas matrices y por lo tanto son regresadas. Tambi´n note que los valores para las llaves 'azul' y 'verde' son diferentes en las dos matrices. Aún así siguen coincidiendo porque se hace la comparación sólo en las llaves. Los valores regresados son aquellos de array1 .

Las dos llaves del par key => value, son considerados iguales solo si (string) $key1 === (string) $key2 . En otras palabras se hace un chequeo estricto del tipo de dato de tal manera que la representación de la cadena debe ser la misma.

Vea también array_diff(), array_udiff() array_diff_assoc(), array_diff_uassoc(), array_udiff_assoc(), array_udiff_uassoc(), array_diff_key(), array_diff_ukey(), array_intersect(), array_intersect_assoc(), array_intersect_uassoc() y array_intersect_ukey().


Matrices
PHP Manual