Maison >développement back-end >tutoriel php >PHP détermine si une clé spécifiée existe dans un tableau

PHP détermine si une clé spécifiée existe dans un tableau

王林
王林avant
2024-03-21 21:21:06589parcourir

Déterminer si une clé spécifiée existe dans un tableau en PHP est l'un des problèmes courants en programmation. En PHP, nous pouvons utiliser la fonction array_key_exists() pour déterminer si la clé spécifiée existe dans le tableau. Si elle existe, elle renvoie vrai, sinon elle renvoie faux. Grâce à cette méthode simple, nous pouvons facilement déterminer si le tableau contient la clé dont nous avons besoin et effectuer le traitement logique correspondant. Jetons un coup d'œil à la méthode de mise en œuvre spécifique.

PHP détermine si la clé spécifiée existe dans un tableau

 :

En php, il existe de nombreuses façons de déterminer si une clé spécifiée existe dans un tableau :

1. Utilisez la fonction isset() :

isset($array["key"])

Cette fonction renvoie une valeur booléenne, si la clé spécifiée existe, elle renvoie vrai, sinon elle renvoie faux.

2. Utilisez la fonction array_key_exists() :

array_key_exists("key", $array)

Cette fonction renvoie également une valeur booléenne, mais contrairement à isset(), elle ne détecte pas les propriétés héritées.

3. Utilisez la fonction in_array() (non recommandé) :

in_array("key", array_keys($array))

La fonction renvoie une valeur booléenne, mais elle convertit les clés du tableau en chaînes, donc les clés numériques peuvent ne pas être détectées.

4. Utilisez la fonction array_search() :

array_search("key", $array)

Cette fonction renvoie le index de la clé spécifiée dans le tableau. Si la clé n'existe pas, elle renvoie false.

5. Utilisez l'opérateur += :

$array["key"] += 0;

Si la clé existe, cette opération augmentera la valeur correspondant à la clé de 0, sinon une nouvelle clé sera ajoutée et sa valeur sera mise à 0. Vérifiez ensuite si $array["key"] vaut 0 pour déterminer si la clé existe.

6. Utilisez la fonction vide() (non recommandé) :

empty($array["key"])

Cette fonction renvoie une valeur booléenne, si la clé n'existe pas ou est vide, elle renvoie vrai, sinon elle renvoie faux.

Comparaison des performances :

  • isset() et array_key_exists() fonctionnent mieux pour les grands tableaux.
  • in_array() et array_search() fonctionnent mieux pour les petits tableaux.
  • += Operator et empty() ont les pires performances et ne sont pas recommandés.

Choisissez la meilleure méthode :

La méthode à choisir dépend de la situation :

  • Si vous devez faire la distinction entre une clé qui n'existe pas et une clé nulle, utilisez isset().
  • Si les propriétés héritées ne sont pas prises en compte, utilisez array_key_exists().
  • Si vous souhaitez obtenir l'index de la clé, utilisez array_search().
  • Si vous devez ajouter une nouvelle clé ou effectuer opérations mathématiques sur la valeur d'une clé existante, utilisez l'opérateur +=.

Exemple :

$array = ["name" => "John", "age" => 30];

if (isset($array["name"])) {
echo "Name exists";
}

if (array_key_exists("age", $array)) {
echo "Age exists";
}

if (array_search("name", $array) !== false) {
echo "Name has index " . array_search("name", $array);
}

$array["hobby"] += 0;
if ($array["hobby"] === 0) {
echo "Hobby does not exist";
}

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:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer