Maison  >  Article  >  développement back-end  >  Comment vérifier si un mot existe dans une chaîne en PHP ?

Comment vérifier si un mot existe dans une chaîne en PHP ?

Barbara Streisand
Barbara Streisandoriginal
2024-10-29 03:01:29317parcourir

How do I check if a word exists within a string in PHP?

Comment vérifier l'existence d'un mot dans une chaîne à l'aide de PHP

Pour déterminer si un mot particulier existe dans une chaîne en PHP, vous disposez de plusieurs options en fonction de vos besoins spécifiques.

Vérification simple :

<code class="php">$needle = "to";
$haystack = "I go to school";

if (strpos($haystack, $needle) !== false) {
    echo "Found!";
}</code>

Ici, strpos() est utilisé pour localiser la position du mot dans la chaîne. S'il est trouvé, il renvoie son index, invitant la condition if à s'exécuter et à imprimer "Trouvé!".

Vérification insensible à la casse :

<code class="php">if (stripos($haystack, $needle) !== false) {
    echo "Found!";
}</code>

stripos() effectue la même opération que strpos() mais ignore les différences de casse, ce qui le rend insensible à la casse.

Correspondance avancée :

Si vous avez besoin de plus de flexibilité dans votre recherche, pensez en utilisant des expressions régulières :

<code class="php">if (preg_match("/to/", $haystack)) {
    echo "Found!";
}</code>

preg_match() vous permet de définir des modèles complexes à faire correspondre au lieu d'un simple mot.

Fonction complète :

Pour une fonction autonome qui encapsule la vérification de l'existence du mot :

<code class="php">function match_my_string($needle = 'to', $haystack = 'I go to school') {
    if (strpos($haystack, $needle) !== false) return true;
    else return false;
}</code>

Cette fonction prend des valeurs par défaut pour le mot et la chaîne recherchés, mais vous pouvez fournir une entrée personnalisée.

Amélioration PHP 8.0.0 :

Dans PHP 8.0.0 et versions ultérieures, vous pouvez utiliser la fonction str_contains(), ce qui simplifie considérablement la vérification :

<code class="php">if (str_contains($haystack, $needle)) {
    echo "Found";
}</code>

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