Dans la programmation PHP, les opérations de comparaison du tableau sont souvent nécessaires, par exemple, nous voulons découvrir les principales différences entre deux tableaux. PHP fournit une fonction intégrée array_diff_key () qui nous aide à détecter efficacement les différences entre les clés du tableau. Cet article expliquera en détail comment utiliser la fonction array_diff_key () pour implémenter la détection de différence de clé du tableau et fournir quelques exemples pour vous aider à mieux comprendre son utilisation.
La fonction array_diff_key () est utilisée pour comparer deux tableaux ou plus, renvoyant des paires de valeurs clés qui existent dans le premier tableau mais qui ne sont pas dans d'autres tableaux. Cette fonction est comparée en fonction des clés, et non des valeurs dans un tableau. Par conséquent, il est très utile pour détecter la différence de clés entre deux tableaux.
array_diff_key(array $array1, array $array2, array ...$arrays): array
$ array1 : le premier tableau qui nécessite une détection de différence clé.
$ array2, ... $ Arrays : Autres tableaux à comparer avec le premier tableau.
array_diff_key () renvoie un nouveau tableau contenant des paires de valeurs clés qui existent dans le premier tableau mais n'apparaissent pas dans d'autres tableaux.
Supposons que nous ayons deux baies, Array1 et Array2 , nous voulons trouver la clé unique à Array1 .
<?php
$array1 = [
'a' => 1,
'b' => 2,
'c' => 3
];
$array2 = [
'a' => 1,
'b' => 4
];
$result = array_diff_key($array1, $array2);
print_r($result);
?>
Résultat de sortie :
Array
(
[c] => 3
)
Dans cet exemple, la fonction array_diff_key () renvoie la paire de valeurs de clé correspondant à la touche C dans Array1 , car C n'apparaît pas dans Array2 .
Nous pouvons comparer plusieurs tableaux et trouver des clés qui se trouvent dans le premier tableau mais pas dans tous les autres tableaux.
<?php
$array1 = [
'a' => 1,
'b' => 2,
'c' => 3
];
$array2 = [
'a' => 1,
'b' => 4
];
$array3 = [
'a' => 1,
'd' => 5
];
$result = array_diff_key($array1, $array2, $array3);
print_r($result);
?>
Résultat de sortie :
Array
(
[c] => 3
)
Dans cet exemple, la clé C n'existe que dans Array1 et n'existe pas dans Array2 et Array3 , il est donc renvoyé.
Vérification des données : Lorsque nous devons comparer deux tableaux pour nous assurer que certaines clés existent dans un tableau mais nous manquons dans un autre, nous pouvons utiliser array_diff_key () pour une vérification rapide.
Traitement du profil : Lors du traitement des fichiers de configuration, vous devrez peut-être comparer différentes versions des fichiers de configuration pour savoir quelle version a ajouté ou supprimé quels éléments de configuration.
Migration des données : Lorsque vous effectuez une migration de données, vous devrez peut-être vérifier les principales différences entre le tableau source et le tableau cible pour assurer l'intégrité des données.
array_diff_key () ne compare que les clés du tableau, quelle que soit la valeur. Si les clés en deux tableaux sont les mêmes mais que les valeurs sont différentes, array_diff_key () les considéreront comme la même clé.
La fonction renvoie un nouveau tableau et ne modifie pas le tableau d'origine.
Ce qui précède est une introduction à la façon d'utiliser la fonction Array_Diff_Key () de PHP pour implémenter la détection de différence de clé du tableau. En utilisant cette fonction, vous pouvez facilement comparer les différences de clés entre deux tableaux ou plus, vous aidant à traiter efficacement les données de tableau.