Maison >développement back-end >tutoriel php >Comment utiliser la fonction array_diff_uassoc en PHP pour utiliser la fonction de rappel afin de comparer les différences de tableaux en fonction des noms de clés et des valeurs de clés
Dans le développement PHP, nous impliquons souvent de comparer les différences entre deux tableaux afin d'effectuer des opérations sur les données ou une synchronisation des données. Parmi elles, la fonction array_diff_uassoc fournie par PHP nous permet de comparer les différences de tableaux en fonction des noms de clés et des valeurs de clés. Cet article explique comment utiliser cette fonction.
array_diff_uassoc La fonction est la fonction de comparaison des différences de tableau intégrée de PHP, qui peut comparer les différences entre plusieurs tableaux et les comparer en fonction à la clé Comparez le nom et la valeur de la clé pour renvoyer le tableau de différence.
La fonction est définie comme suit :
array array_diff_uassoc (array $array1, array $array2 [, array $... ], callable $key_compare_func)
Parmi eux, $array1, $array2, etc. sont plusieurs tableaux à comparer, et $key_compare_func est une fonction de rappel utilisée pour comparer les noms de clés et les différences dans les valeurs clés.
Utilisons un exemple pour montrer comment utiliser la fonction array_diff_uassoc.
Tout d'abord, nous définissons deux tableaux :
$array1 = array("a"=>"apple", "b"=>"banana", "c"=>"cherry", "d"=>"date"); $array2 = array("a"=>"apple", "b"=>"banana", "f"=>"fig");
Ensuite, nous définissons une fonction de rappel personnalisée pour comparer la différence entre les noms de clés et les valeurs des clés :
function myfunction($key1, $key2, $value1, $value2) { if ($key1 == $key2 && $value1 == $value2) { return 0; } else { return 1; } }#🎜 🎜#Cette fonction accepte quatre paramètres, qui sont les noms de clé et les valeurs de clé des deux tableaux. Si les noms de clé et les valeurs de clé sont identiques, 0 est renvoyé, sinon 1 est renvoyé pour comparaison. Enfin, nous appelons la fonction array_diff_uassoc pour effectuer l'opération de comparaison des différences de tableau :
$diff = array_diff_uassoc($array1, $array2, "myfunction"); print_r($diff);Les résultats de sortie sont les suivants :
Array ( [c] => cherry [d] => date )Comme vous peut voir, la fonction renvoie la comparaison Le tableau de différence après cela, c'est-à-dire les éléments dans $array1 mais pas dans $array2. Ici, nous confirmons que les éléments « c » et « d » dans $array1 ne sont pas dans $array2 via le tableau de différence renvoyé. Enfin, parlons des règles d'utilisation des fonctions de rappel :
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!