# Utiliser strpos en PHP pour vérifier si un string en contient un autre

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”.