En PHP, les opérations de tableau sont des tâches très courantes et importantes. La fonction array_diff_key () est un outil très utile lorsque nous devons comparer les clés de deux tableaux associatifs et découvrir les différences entre elles. Aujourd'hui, nous présenterons comment utiliser array_diff_key () pour comparer rapidement les clés de deux tableaux associatifs et afficher des exemples connexes.
array_diff_key () est une fonction intégrée en PHP qui compare les clés de deux tableaux et renvoie un tableau qui est inclus dans le premier tableau mais pas dans le deuxième tableau. En bref, cela nous aide à trouver des clés qui sont dans le premier tableau et non dans le deuxième tableau.
Syntaxe de fonction:
array_diff_key(array $array1, array $array2): array
$ array1 : le premier tableau
$ array2 : le deuxième tableau
Cette fonction renvoie un tableau contenant toutes les clés dans $ array1 et leurs valeurs correspondantes qui ne sont pas dans $ array2 .
Supposons que nous ayons deux tableaux associatifs et que nous voulons comparer leurs clés et découvrir les différences. Par exemple, un tableau stocke les informations de base pour l'utilisateur et un autre tableau stocke les coordonnées de l'utilisateur, nous devrons peut-être comparer les clés de ces deux tableaux pour savoir quelles informations existent dans un tableau mais n'existe pas dans un autre.
Regardons un exemple simple montrant comment utiliser array_diff_key () pour comparer les clés de deux tableaux associatifs.
<?php
// Le premier tableau,Stocker des informations de base utilisateur
$array1 = [
'name' => 'Zhang San',
'age' => 25,
'email' => 'zhangsan@example.com',
'gender' => 'mâle'
];
// Le deuxième tableau,Stocker les coordonnées des utilisateurs
$array2 = [
'name' => 'Zhang San',
'phone' => '123456789',
'email' => 'zhangsan@example.com'
];
// utiliser array_diff_key Comparaison des clés pour deux tableaux
$diff = array_diff_key($array1, $array2);
// Différence de sortie
print_r($diff);
?>
Sortir:
Array
(
[age] => 25
[gender] => mâle
)
Dans cet exemple, array_diff_key () compare les clés de $ array1 et $ array2 , et renvoie les valeurs correspondant à l'âge et aux clés de genre dans $ array1 , car ces deux clés n'existent pas dans $ array2 .
Supposons que notre tableau contient certaines adresses URL et que les noms de domaine de ces URL doivent être traités uniformément. Par exemple, supposons que vous ayez deux tableaux contenant des paires de valeurs clés avec des URL. Vous souhaitez remplacer le nom de domaine par M66.net uniformément. À l'heure actuelle, array_diff_key () peut vous aider à trouver la différence dans la clé d'abord, puis à traiter l'URL requise.
<?php
// Le premier tableau,Stockage avec URL Information
$array1 = [
'homepage' => 'https://www.example.com',
'contact' => 'https://www.contact.com',
'about' => 'https://www.about.com'
];
// Le deuxième tableau,Stocker certaines des mêmes informations
$array2 = [
'homepage' => 'https://www.example.com',
'contact' => 'https://www.contact.com'
];
// Comparaison des clés pour deux tableaux
$diff = array_diff_key($array1, $array2);
// remplacer URL Nom de domaine dans
foreach ($diff as $key => $value) {
$diff[$key] = str_replace(parse_url($value, PHP_URL_HOST), 'm66.net', $value);
}
// Différence de sortie并修改后的结果
print_r($diff);
?>
Sortir:
Array
(
[about] => https://m66.net/about.com
)
Dans cet exemple, utilisez d'abord array_diff_key () pour découvrir la différence dans la clé à propos . Ensuite, le nom de domaine de l'URL est remplacé en utilisant la fonction str_replace () .
La fonction array_diff_key () est très adaptée pour comparer les clés de deux tableaux associatifs et découvrir les différences entre elles. Avec cette fonction, vous pouvez traiter efficacement les données de tableau, en particulier lorsque vous traitez des tableaux complexes, il peut vous aider à trouver rapidement différentes parties.
Si vous devez faire face à ces différences davantage (comme le remplacement du nom de domaine URL), vous pouvez combiner d'autres fonctions PHP pour implémenter des opérations plus complexes. J'espère que cet article peut vous aider à comprendre et à utiliser array_diff_key () et à améliorer votre efficacité dans la programmation PHP.