Función array_intersect_key() de PHP
Ejemplo
Comparar los nombres de clave de dos arrays y devolver la intersección:
<?php $a1=array("a"=>"red","b"=>"green","c"=>"blue"); $a2=array("a"=>"red","c"=>"blue","d"=>"pink"); $result=array_intersect_key($a1,$a2); print_r($result); ?>
Definición y uso
La función array_intersect_key() se utiliza para comparar los nombres de clave de dos (o más) arrays y devuelve la intersección.
Esta función compara los nombres de clave de dos (o más) arrays y devuelve un array de intersección que incluye todos los valores de los nombres de clave en el array comparado (array1también en cualquier otro array de parámetros (array2 o array3 etc.) de los nombres de clave.
Descripción
La función array_intersect_key() utiliza la comparación de nombres de clave para calcular la intersección de los arrays.
array_intersect_key() devuelve un array que contiene todos los valores de los nombres de clave que aparecen tanto en el array comparado como en todos los otros arrays de parámetros.
Comentarios:Sólo se utilizan los nombres de clave para la comparación.
Sintaxis
array_intersect_key(array1,array2,array3...)
Parámetros | Descripción |
---|---|
array1 | Obligatorio. El primer array para comparar con otros arrays. |
array2 | Obligatorio. El array para comparar con el primer array. |
array3,... | Opcional. Otros arrays para comparar con el primer array. |
Detalles técnicos
Valor devuelto: | Devuelve un array de intersección que incluye todos los nombres de clave que están en el array comparado (array1) y también en cualquier otro array de parámetros (array2 o array3, etc.). |
Versión de PHP: | 5.1.0+ |
Más ejemplos
Ejemplo 1
Comparar los nombres de clave de dos matrices de índices y devolver la intersección:
<?php $a1=array("red","green","blue","yellow"); $a2=array("red","green","blue"); $result=array_intersect_key($a1,$a2); print_r($result); ?>
Ejemplo 2
Comparar los nombres de clave de tres matrices y devolver la intersección:
<?php $a1=array("a"=>"red","b"=>"green","c"=>"blue"); $a2=array("c"=>"yellow","d"=>"black","e"=>"brown"); $a3=array("f"=>"green","c"=>"purple","g"=>"red"); $result=array_intersect_key($a1,$a2,$a3); print_r($result); ?>