Rechercher l’inclusion d’un string dans un autre
Utiliser strpos
La fonction PHP strpos renvoie la position de la première occurrence de la sous-chaîne spécifiée dans la chaîne de caractères. Si la sous-chaîne n’est pas trouvée, la fonction renvoie la valeur false.
strpos(string $chaineARechercher, string $chaineCible, int $offset = 0): int|false
$chaineARechercher (string): la chaîne que l’on veut rechercher dans une chaîne cible.
$chaineCible (string): la chaîne cible dans laquelle on effectue la recherche.
$offset (int): index à partir duquel effectuer la recherche 0 par défaut.
$position = strpos("On aime PHP", "aime");
echo $position; // 3
Vérifier l’inclusion
On peut utiliser une condition if pour vérifier l’inclusion de la chaîne du fait que $position soit false si l’index du mot recherché n’est pas trouvé.
if ($position !== false) {
echo "La sous-chaîne a été trouvée".
} else {
var_dump($position); // bool(false)
}
Renseigner un offset pour une recherche plus précise
Si on renseigne le troisième argument offset, on spécifie que que la recherche sera restreinte sur une partie de la chaîne: la sous-chaîne qui comment à partir de l’index égale à offset jusqu’à la fin de la chaîne.
$position = strpos("On aime PHP", "aime", 4);
var_dump($position); // bool(false)
$position est false car l’index 4 est plus loin que l’index 3 de “aime”.