(PHP 5 >= 5.1.0)
array_intersect_key — Calcule l'intersection de deux tableaux en utilisant les clés pour comparaison
array_intersect_key() retourne un tableau contenant toutes les valeurs du tableau array1 qui contiennent des clés présentes dans tous les arguments.
Le tableau contenant les clés maîtres à vérifier.
Un tableau contenant les clés à comparer.
Une liste variable de tableaux à comparer.
Retourne un tableau associatif contenant toutes les valeurs du tableau array1 qui ont des clés correspondantes présentes dans tous les arguments.
Exemple #1 Exemple avec 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));
?>
L'exemple ci-dessus va afficher :
array(2) { ["blue"]=> int(1) ["green"]=> int(3) }
Dans cet exemple, vous pouvez voir que seules les clés 'bleu' et 'vert' sont présentes dans les deux tableaux et donc, elles sont retournées. Notez également que les valeurs pour les clés 'bleu' et 'vert' diffèrent entre les deux tableaux. Néanmoins, elles correspondent toujours car uniquement les clés sont vérifiées. Les valeurs retournées sont celles du tableau array1 .
Les deux clés depuis les paires clé => valeur sont considérées comme égales uniquement si (string) $cle1 === (string) $cle2 . En d'autres mots, une analyse du type stricte est exécuté, donc, le type doit être exactement le même.