Déterminer si une chaîne existe déjà dans un tableau est un problème courant en PHP. Dans le développement réel, vous pouvez rencontrer le besoin de déterminer si une chaîne a été stockée dans un tableau pour éviter la duplication de données.
Cet article explique comment déterminer si une chaîne existe déjà dans un tableau en PHP.
PHP fournit une fonction in_array(), qui peut être utilisée pour déterminer si une valeur spécifiée existe déjà dans un tableau.
Le prototype de la fonction est le suivant :
in_array ( mixed $needle , array $haystack [, bool $strict = FALSE ] ) : bool
Parmi eux, le paramètre $needle est la valeur à trouver, le paramètre $haystack est le tableau à rechercher et le paramètre $strict indique s'il faut utiliser le mode strict In. mode strict, en plus des types correspondants, Pour faire correspondre la valeur.
Ce qui suit est un exemple d'utilisation de la fonction in_array() :
<?php $arr = array("apple", "banana", "orange"); if (in_array("apple", $arr)) { echo "字符串存在于数组中"; } else { echo "字符串不存在于数组中"; } ?>
Dans l'exemple ci-dessus, $arr est un tableau contenant les trois chaînes "apple", "banana" et "orange". Nous utilisons la fonction in_array() pour déterminer si la chaîne "apple" est dans le tableau $arr. Si elle existe, elle affichera "la chaîne existe dans le tableau", sinon elle affichera "la chaîne n'existe pas dans le tableau". tableau".
PHP fournit également une fonction array_search(), qui est utilisée pour rechercher une valeur donnée dans le tableau et renvoyer le nom de clé correspondant.
Le prototype de la fonction est le suivant :
array_search ( mixed $needle , array $haystack [, bool $strict = false ] ) : mixed
Parmi eux, le paramètre $needle est la valeur à trouver, le paramètre $haystack est le tableau à rechercher et le paramètre $strict indique s'il faut utiliser le mode strict In. mode strict, en plus des types correspondants, Pour faire correspondre la valeur.
Ce qui suit est un exemple d'utilisation de la fonction array_search() :
<?php $arr = array("apple", "banana", "orange"); if (array_search("apple", $arr) !== false) { echo "字符串存在于数组中"; } else { echo "字符串不存在于数组中"; } ?>
Dans l'exemple ci-dessus, $arr est un tableau contenant les trois chaînes "pomme", "banane" et "orange". Nous utilisons la fonction array_search() pour déterminer si la chaîne "apple" est dans le tableau $arr. Si elle existe, elle affichera "La chaîne existe dans le tableau", sinon elle affichera "La chaîne n'existe pas dans le tableau". tableau". Il convient de noter que puisque la fonction array_search() peut renvoyer 0, nous devons utiliser l'opérateur !== pour une comparaison stricte.
En plus de la fonction in_array() et de la fonction array_search(), vous pouvez également utiliser la fonction in_array() et la fonction array_map() pour déterminer si la chaîne existe déjà dans le tableau.
<?php $arr = array("apple", "banana", "orange"); function exists_in_array($str, $arr) { return in_array($str, $arr); } if (in_array("apple", array_map("exists_in_array", "apple", $arr))) { echo "字符串存在于数组中"; } else { echo "字符串不存在于数组中"; } ?>
Dans l'exemple ci-dessus, nous avons défini une fonction nommée exist_in_array(). La fonction de la fonction est de déterminer si une chaîne existe déjà dans le tableau donné. Nous utilisons ensuite la fonction array_map() pour passer chaque élément du tableau $arr comme deuxième argument à la fonction exist_in_array(), et passons le caractère « pomme » comme premier argument à la fonction exist_in_array(). Enfin, nous transmettons le résultat renvoyé à la fonction in_array() pour déterminer si la chaîne "apple" est dans le tableau $arr. Si elle existe, elle affiche "La chaîne existe dans le tableau", sinon elle affiche "La chaîne existe". n'existe pas dans le tableau."milieu".
Conclusion
Cet article présente trois méthodes en PHP pour déterminer si une chaîne existe déjà dans un tableau, en utilisant la fonction in_array(), la fonction array_search(), la fonction in_array() et une combinaison de array_map() fonction. L’utilisation de ces méthodes peut efficacement éviter la duplication des données et améliorer les performances du programme.
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!