Maison >développement back-end >tutoriel php >Comment puis-je vérifier efficacement si une chaîne contient un mot spécifique en PHP ?
Vérification d'une chaîne pour un mot spécifique
La tâche consistant à vérifier si une chaîne contient un mot particulier est une opération courante en programmation. Considérez le code suivant :
$a = 'How are you?'; if ($a contains 'are') echo 'true';
Quelle est la bonne façon d'écrire l'instruction si ($a contient 'are') ?
Solution : fonction str_contains (PHP 8)
À partir de PHP 8, str_contains fournit un outil simple solution :
if (str_contains('How are you', 'are')) { echo 'true'; }
Cependant, il est important de noter que str_contains renvoie toujours true si la sous-chaîne à rechercher ($needle) est vide. Pour éviter cela, vérifiez que $needle n'est pas vide avant d'utiliser str_contains.
Alternatives (Pré-PHP 8)
Avant PHP 8, la fonction strpos() a été utilisé à cet effet :
$haystack = 'How are you?'; $needle = 'are'; if (strpos($haystack, $needle) !== false) { echo 'true'; }
Dans ce cas, strpos() renvoie la position de la $needle dans le $botte de foin, ou false s'il n'est pas trouvé. Cependant, utiliser !== false est nécessaire puisque 0 est une position valide et est également évaluée à falsey.
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!