Maison > développement back-end > Problème PHP > Comment déterminer si une valeur est dans un tableau en php

Comment déterminer si une valeur est dans un tableau en php

PHPz
Libérer: 2023-04-25 09:50:32
original
481 Les gens l'ont consulté

En programmation PHP, il est souvent nécessaire de déterminer si une certaine valeur se trouve dans un tableau. Cela peut généralement être réalisé à l'aide de la fonction in_array(). Cependant, nous devons parfois déterminer si une valeur ne se trouve pas dans le tableau, alors comment devons-nous procéder ?

Dans cet article, nous présenterons trois méthodes couramment utilisées pour déterminer si une valeur ne se trouve pas dans un tableau, ainsi que leurs avantages, inconvénients et scénarios applicables. Tout d'abord, voyons comment utiliser la fonction in_array() :

in_array($needle, $haystack);
Copier après la connexion

où $needle représente la valeur à trouver et $haystack représente le tableau dans lequel rechercher. Si $needle est dans $haystack, la fonction renvoie vrai sinon, elle renvoie faux.

Ensuite, pour déterminer si une valeur n'est pas dans le tableau, il vous suffit d'ajouter une opération de négation avant le résultat de la fonction in_array(), comme indiqué ci-dessous :

!in_array($needle, $haystack);
Copier après la connexion

De cette façon, vous pouvez déterminer si $needle n'est pas dans $haystack . Cependant, cette méthode présente un inconvénient, c'est-à-dire que lorsque $needle est dans $haystack, la fonction retournera toujours false et le résultat devra être à nouveau inversé pour obtenir la bonne réponse.

La méthode ci-dessus peut également être réécrite sous la forme suivante :

array_search($needle, $haystack) === false;
Copier après la connexion

La fonction array_search() est utilisée pour trouver une valeur dans le tableau Si elle est trouvée, la clé de la valeur dans le tableau est renvoyée ; est revenu. Par conséquent, si vous souhaitez déterminer que $needle n'est pas dans $haystack, vous pouvez déterminer si la valeur de retour de array_search($needle, $haystack) est égale à false.

Cependant, cette méthode présente également un inconvénient, c'est-à-dire que si $needle est dans $haystack, la fonction renverra la clé de l'élément dans le tableau au lieu de renvoyer true. Il faudra donc comparer à nouveau les résultats pour obtenir la bonne réponse.

Enfin, nous introduisons une méthode plus simple et plus efficace, utilisant les opérateurs PHP ! = et !==, comme indiqué ci-dessous :

!($value != array_search($needle, $haystack));
Copier après la connexion

Le principe de cette méthode est que si $needle est dans $haystack, array_search($needle, $haystack) renvoie la clé de l'élément dans le tableau, et $value est égal à La clé ; sinon, $value est égal à false. Par conséquent, il vous suffit de déterminer si $value est égal à array_search ($needle, $haystack), puis d'effectuer l'opération d'inversion pour obtenir la bonne réponse.

En bref, en programmation PHP, vous pouvez utiliser les trois méthodes ci-dessus pour déterminer si une valeur n'est pas dans un tableau. Lors du choix de la méthode appropriée, vous devez tenir compte de la situation spécifique et choisir la méthode la plus appropriée pour mettre en œuvre la fonction.

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!

source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal