array_diff_key

(no version information, might be only in CVS)

array_diff_key -- Calcul la différence de deux tableaux en utilisant les clés pour comparaison

Description

array array_diff_key ( array array1, array array2 [, array ...] )

array_diff_key() retourne un tableau contenant toutes les valeurs de array1 où les clés de ce tableau ne sont présentes dans aucun des autres arguments. Notez que l'associativité est préservée. Cette fonction fonctionne de la même façon que la fonction array_diff() excepté le fait que la comparaison est faîte sur les clés au lieu des valeurs.

Exemple 1. Exemple avec array_diff_key()

<?php
$array1
= array('bleu'  => 1, 'rouge'  => 2, 'vert'  => 3, 'violet' => 4);
$array2 = array('vert' => 5, 'bleu' => 6, 'jaune' => 7, 'cyan'   => 8);

var_dump(array_diff_key($array1, $array2));
?>

L'exemple ci-dessus va afficher :

array(2) {
  ["rouge"]=>
  int(2)
  ["violet"]=>
  int(4)
}

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.

Note : Notez que cette fonction vérifie uniquement une dimension d'un tableau possédant n dimensions. Bien sûr, vous pouvez vérifier une dimension plus profonde en utilisant, par exemple, array_diff_key($array1[0], $array2[0]);.

Voir aussi array_diff(), array_udiff() array_diff_assoc(), array_diff_uassoc(), array_udiff_assoc(), array_udiff_uassoc(), array_diff_ukey(), array_intersect(), array_intersect_assoc(), array_intersect_uassoc(), array_intersect_key() et array_intersect_ukey().