Maison >développement back-end >tutoriel php >`isset()` vs `array_key_exists()` : quand dois-je utiliser chaque fonction en PHP ?

`isset()` vs `array_key_exists()` : quand dois-je utiliser chaque fonction en PHP ?

Linda Hamilton
Linda Hamiltonoriginal
2024-12-07 18:08:12733parcourir

`isset()` vs. `array_key_exists()`: When Should I Use Each Function in PHP?

Différence entre isset() et array_key_exists()

En PHP, lorsque vous travaillez avec des tableaux, vous pouvez rencontrer le besoin de vérifier si un une clé spécifique existe dans le tableau. Deux fonctions courantes utilisées à cette fin sont isset() et array_key_exists().

isset()

isset() vérifie si une variable existe dans la portée actuelle et a une valeur autre que NULL. Lorsqu'il est appliqué à un tableau, il détermine si la clé spécifiée existe et si sa valeur associée n'est pas NULL.

array_key_exists()

array_key_exists(), par contre , se concentre exclusivement sur l'existence des clés dans un tableau. Il vérifie si la clé fournie est présente dans le tableau, quelle que soit sa valeur associée.

Différences clés

Les principales différences entre isset() et array_key_exists() sont :

  • Considération de valeur : isset() considère la valeur associée à la clé, tandis que array_key_exists() ne prend en compte que la présence de la clé.
  • Existence vs NULL : isset() renvoie true pour les clés existantes avec des valeurs non NULL, tandis que array_key_exists() renvoie true pour les clés existantes indépendamment de leurs valeurs associées.
  • Tableaux inexistants : isset() ne lance pas de erreur lorsque le tableau n'existe pas, alors que array_key_exists() existe.

Exemple d'utilisation

Considérez le tableau suivant :

$a = array('key1' => 'value1', 'key2' => null);
  • isset($a['key1']) : Renvoie vrai car la clé existe et sa valeur n'est pas NULL.
  • isset($a['key2']) : Renvoie false car la clé existe mais sa valeur est NULL.
  • array_key_exists('key1', $a) : renvoie vrai car la clé existe dans le array.
  • array_key_exists('key2', $a) : Renvoie vrai car la clé existe dans le tableau, même si sa valeur est NULL.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn