Maison > Article > développement back-end > Explication détaillée de l'utilisation de la fonction de tableau php array_key_exists()
Cet article résume et vous présente les connaissances pertinentes de la fonction php array array_key_exists() et la comparaison des performances avec in_array, ainsi que le analyse de la différence avec isset. Pour plus de détails, les amis dans le besoin peuvent s'y référer.
La fonction array_key_exists() détermine si la clé spécifiée existe dans un tableau. Si la clé existe, elle renvoie vrai, sinon elle renvoie faux
array_key_exists(key,array);
clé : obligatoire. Spécifiez le nom de la clé
tableau : obligatoire. Spécifie le tableau d'entrée
<?php $a = array('a'=>'Dog','b'=>'Cat'); if(array_key_exists('a',$a)){ echo 'Key exists!'; } else{ echo 'Key does not exist!'; } ?>
Sortie : La clé existe !
Pourquoi array_key_exists est-il plus rapide que in_array ?
Array_key_exists et in_array interrogent des choses différentes, n'est-ce pas ?
array_key_exists détermine s'il existe une valeur clé
array_key_exists(a,arr)->if(isset(arr[a]) ) C'est vrai
et in_array doit parcourir la valeur avant de sortir de la boucle
Question :
L'index du tableau a-t-il une unité de stockage séparée et est-il optimisé ? la complexité temporelle de array_key_exists est o(1), et in_array est o(n) ??
Réponse suivante :
En termes de complexité, c'est ça
array_key_exists consiste à déterminer si une certaine clé n'a pas de valeur
in_array. Si vous souhaitez parcourir une fois pour savoir si elles sont identiques, vous devez parcourir
La différence entre. isset et array_key_exists en PHP
1. Le jugement des valeurs du tableau est différent pour les valeurs nulles ou '' ou fausses, isset renvoie false et array_key_exists renvoie true ;
2. L'efficacité d'exécution est différente. isset est unopérateur intégré est une fonction intégrée de php, et isset est plus rapide. Veuillez vous référer à : Principe d'implémentation de la fonction PHP et analyse des performances
3. Lorsque vous utilisez isset pour accéder à une valeur de tableau d'index inexistante, cela ne provoquera pas de message d'erreur php E_NOTICE 4. array_key_exists appellera get_defined_vars pour déterminer si la variable tableau existe, isset n'est pas utilisé Code de test :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!