Dans PHP, la fonction array_diff_assoc () est utilisée pour comparer les clés et les valeurs de deux tableaux ou plus, renvoyant un nouveau tableau contenant la pièce de différence. Plus précisément, il vérifie les différences entre les paires de valeurs clés dans le tableau, et si les clés et les valeurs des deux tableaux sont les mêmes, les deux éléments sont considérés comme les mêmes. Par conséquent, la fonction array_diff_assoc () peut nous aider à supprimer les éléments dans un tableau avec exactement la même valeur de clé.
Cet article vous montrera comment utiliser la fonction array_diff_assoc () pour supprimer les éléments avec exactement la même valeur de clé dans un tableau et afficher certains scénarios d'application courants.
array_diff_assoc(array $array1, array $array2, array ...$arrays): array
$ array1 : le premier tableau.
$ array2 : le deuxième tableau.
$ Arrays : Facultatif, plusieurs tableaux peuvent être transmis ensemble.
Cette fonction renvoie un tableau contenant des paires de valeurs clés qui sont dans $ array1 mais pas dans $ array2 .
Affichons d'abord comment utiliser la fonction array_diff_assoc () avec un exemple simple.
<?php
$array1 = [
'a' => 1,
'b' => 2,
'c' => 3
];
$array2 = [
'a' => 1,
'b' => 2,
'd' => 4
];
$result = array_diff_assoc($array1, $array2);
print_r($result);
?>
Résultat de sortie:
Array
(
[c] => 3
)
Dans l'exemple ci-dessus, array_diff_assoc () compare les paires de valeurs clés dans array1 et array2 . Étant donné que A => 1 et B => 2 sont les mêmes dans les deux tableaux, ils n'apparaîtront pas dans le tableau de résultat. En fin de compte, seule la clé C => 3 est conservée.
Supposons que vous ayez un tableau contenant plusieurs paires de valeurs de clé en double, et que vous souhaitez supprimer des éléments avec exactement la même valeur de clé, qui peut être réalisée par array_diff_assoc () .
<?php
$array = [
'a' => 1,
'b' => 2,
'c' => 3,
'a' => 1, // Répéter des éléments
'b' => 2, // Répéter des éléments
];
$array_unique = array_diff_assoc($array, array());
print_r($array_unique);
?>
Résultat de sortie:
Array
(
[a] => 1
[b] => 2
[c] => 3
)
Dans cet exemple, la fonction array_diff_assoc () nous aide à supprimer les paires de valeurs de clé en double du tableau d'origine et conserve uniquement les paires de valeurs clés uniques.
Les clés et les valeurs doivent correspondre : array_diff_assoc () ne vérifiera pas seulement si les clés sont les mêmes, mais vérifient également si les valeurs sont les mêmes. Si les clés sont les mêmes mais que les valeurs sont différentes, les éléments seront considérés comme différents.
Contrairement à array_diff () : array_diff () ne compare que les valeurs et ignore les clés. array_diff_assoc () compare à la fois les clés et les valeurs, de sorte que les différences peuvent être filtrées plus strictement.
Comparaison multiple du tableau : plusieurs tableaux peuvent être transmis, array_diff_assoc () renverra les différences dans ces tableaux.
La fonction array_diff_assoc () est un outil très utile, surtout lorsque vous devez comparer les tableaux et supprimer des éléments en double. Il peut nous aider à filtrer les éléments que nous voulons en fonction de la correspondance exacte des clés et des valeurs. La maîtrise de la façon d'utiliser cette fonction peut vous aider à traiter les données dans les tableaux plus efficacement.
Si vous avez des questions sur l'utilisation d'autres fonctions PHP, veuillez continuer à nous demander!