(PHP 4 >= 4.3.0, PHP 5, PHP 7, PHP 8)
array_diff_assoc — Calcule la différence de deux tableaux, en prenant aussi en compte les clés
$array
, array ...$arrays
): array
Compare array
avec les tableaux arrays
et retourne la différence. Contrairement à la fonction array_diff(),
les clés du tableau sont également utilisées dans la comparaison.
array
Le tableau à comparer
arrays
Tableaux à comparer contre
Retourne un tableau contenant toutes les valeurs du tableau
array
qui ne sont pas présentes dans les
autres tableaux.
Version | Description |
---|---|
8.0.0 | Cette fonction peut désormais être appelée avec un seul paramètre. Auparavant, au moins deux paramètres étaient nécessaires. |
Exemple #1 Exemple avec array_diff_assoc()
Dans cet exemple, vous pouvez voir que la paire "a" => "vert"
est présente dans les deux tableaux, et donc, n'est pas présente dans le
résultat de la fonction. Au contraire, la paire 0 => "rouge"
est présente dans le résultat, car le second argument "rouge"
possède une clé qui est 1
.
<?php
$array1 = array("a" => "vert", "b" => "marron", "c" => "bleu", "rouge");
$array2 = array("a" => "vert", "jaune", "rouge");
$result = array_diff_assoc($array1, $array2);
print_r($result);
?>
L'exemple ci-dessus va afficher :
Array ( [b] => marron [c] => bleu [0] => rouge )
Exemple #2 Exemple avec array_diff_assoc()
Deux valeurs des paires clé => valeur sont
considérées comme égales uniquement si (string) $elem1 === (string)
$elem2
. En d'autres termes, une vérification stricte est effectuée
sur la représentation en chaînes de caractères.
<?php
$array1 = array(0, 1, 2);
$array2 = array("00", "01", "2");
$result = array_diff_assoc($array1, $array2);
print_r($result);
?>
L'exemple ci-dessus va afficher :
Array ( [0] => 0 [1] => 1 )
Note: Notez bien que cette fonction ne travaille que sur une dimension de tableau. Bien sur, vous pouvez utiliser des sous dimensions de tableau comme ceci :
array_diff_assoc($array1[0], $array2[0]);
.
Note: Assurez-vous de passer les arguments dans le bon ordre lors de la comparaison de tableaux similaires avec plus de clés. Le nouveau tableau doit être le premier de la liste.