Comment vérifier si une chaîne contient un mot spécifique en PHP ?
Bonjour à tous ! Je suis débutant en PHP et j'écris un petit script pour traiter les commentaires sur un site. J'ai besoin de vérifier si une chaîne contient un mot spécifique, par exemple, si l'utilisateur a écrit "spam" ou "publicité", le commentaire doit être bloqué.
Le problème est que j'ai essayé plusieurs méthodes, mais elles ne fonctionnent pas comme je l'espérais. Voici ce que j'ai fait :
```php
$text = "C'est un excellent site, merci !";
if ($text == "merci") {
echo "Trouvé !";
}
```
Ce code ne fonctionne que si la chaîne est exactement égale au mot "merci", mais s'il y a d'autres mots, la condition n'est pas remplie. J'ai aussi essayé d'utiliser `strpos()`, mais pour une raison quelconque, il ne trouve pas toujours le mot. Par exemple :
```php
$text = "Bonjour, comment ça va ?";
if (strpos($text, "va")) {
echo "Trouvé !";
}
```
Parfois cela fonctionne, parfois non, et je ne comprends pas pourquoi. De plus, quand je vérifie le mot "spam" et que l'utilisateur écrit "SPAM" en majuscules, la fonction ne le trouve pas.
Dites-moi comment faire correctement.