array_diff_assoc

(PHP 4 >= 4.3.0, PHP 5)

array_diff_assoc — Calcule la différence de deux tableaux, en prenant en compte les clés

Description

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

Compare array1 et array2 et retourne la différence. Contrairement à la fonction array_diff() , les clés du tableau sont également utilisées dans la comparaison.

Liste de paramètres

array1

Le tableau à comparer

array2

Le tableau à comparer

...

Plus de tableaux à comparer

Valeurs de retour

Retourne un tableau contenant toutes les valeurs du tableau array1 qui ne sont pas présentes dans les autres tableaux.

Exemples

Exemple 379. 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 380. 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
    )

    

Notes

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]); .

Voir aussi

array_diff()
array_intersect()
array_intersect_assoc()