Maison  >  Article  >  développement back-end  >  Comment déterminer si une chaîne existe dans un tableau php

Comment déterminer si une chaîne existe dans un tableau php

PHPz
PHPzoriginal
2023-04-23 10:06:33558parcourir

En PHP, déterminer si une chaîne existe dans un tableau est une opération fréquemment utilisée. Cela peut être réalisé en utilisant la fonction in_array(). Cette fonction est utilisée pour déterminer si la valeur spécifiée existe dans le tableau. Si elle existe, elle renvoie True, sinon elle renvoie False. Ci-dessous, nous utiliserons un exemple de code pour montrer comment utiliser la fonction in_array() pour juger les éléments d'un tableau.

Tout d'abord, nous définissons un tableau contenant plusieurs éléments de chaîne, comme indiqué ci-dessous :

$fruits = array("Apple", "Banana", "Orange", "Pineapple", "Mango");

Ensuite, nous pouvons utiliser la fonction in_array() pour déterminer si le tableau contient la chaîne spécifiée, comme indiqué ci-dessous :

if (in_array("Apple", $fruits)) {
    echo "字符串Apple存在于数组中!";
} else {
    echo "字符串Apple不存在于数组中!";
}

Dans ce qui précède code, nous déterminons d'abord si le tableau $fruits contient la chaîne "Apple". Si elle existe, il affichera "La chaîne Apple existe dans le tableau !", sinon il affichera "La chaîne Apple n'existe pas dans le tableau ! ". On voit que l'utilisation de la fonction in_array() est très pratique, il suffit de fournir la chaîne à trouver et le nom du tableau pour porter un jugement.

Si vous devez déterminer la position de l'élément dans le tableau, vous pouvez utiliser la fonction array_search() pour le trouver, par exemple :

echo "Apple在数组中的位置为:" . array_search("Apple", $fruits);

Dans le code ci-dessus, nous utilisons la fonction array_search() pour obtenir la position de l'élément "Apple" dans le tableau. Cette fonction renvoie la chaîne "0", indiquant que l'élément est le premier du tableau.

Il est à noter que pour la fonction in_array(), son deuxième paramètre peut être une valeur booléenne (facultatif), qui indique s'il faut comparer les types de données. La valeur par défaut est false, c'est-à-dire uniquement les valeurs des éléments. sont comparés. Les types de données ne sont pas comparés. Si vous devez comparer les types de données, vous pouvez définir le deuxième paramètre sur true, comme indiqué ci-dessous :

$numbers = array("1", 2, 3, 4, 5);

if (in_array("1", $numbers, true)) {
  echo "'1'存在于数组中(数据类型匹配)";
} else {
  echo "'1'不存在于数组中(数据类型匹配)";
}

if (in_array(1, $numbers, true)) {
  echo "1存在于数组中(数据类型匹配)";
} else {
  echo "1不存在于数组中(数据类型匹配)";
}

Dans le code ci-dessus, nous utilisons respectivement la chaîne "1" et l'entier 1 pour déterminer si l'élément "1" existe dans le tableau Puisque les types de données ne correspondent pas, le premier est faux et le second est vrai.

De plus, pour la recherche de données à grande échelle, l'utilisation de la fonction in_array() peut prendre du temps, car cette fonction doit parcourir l'intégralité du tableau pour trouver l'élément spécifié. À l'heure actuelle, nous pouvons utiliser la fonction isset() pour porter un jugement, ce qui est plus rapide que la fonction in_array(). Par exemple :

$fruits = array("Apple", "Banana", "Orange", "Pineapple", "Mango");

if(isset($fruits[array_search('Apple', $fruits)])) {
  echo "数组中存在字符串'Apple'!";
} else {
  echo "数组中不存在字符串'Apple'!";
}

Dans le code ci-dessus, nous utilisons d'abord la fonction array_search() pour trouver la position de la chaîne "Apple" dans le tableau $fruits, puis utilisons la fonction isset() pour juger si la position existe. , cela signifie que l'élément existe dans le tableau.

Pour résumer, juger si une chaîne existe dans un tableau est une exigence très courante. PHP propose différentes façons d'y parvenir. Nous pouvons choisir différentes fonctions pour juger en fonction de la situation réelle.

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