Avatar ·

Comment vérifier si une chaîne commence par une sous-chaîne donnée en PHP ?

Bonjour à tous ! Je suis débutant en PHP et j'écris un petit script pour traiter des URL. Je dois vérifier si une chaîne commence par un préfixe spécifique, par exemple "https://" ou "/admin/". Dans d'autres langages, j'ai vu des fonctions comme startsWith(), mais en PHP, il semble qu'il n'y en ait pas. J'ai essayé d'utiliser strpos(), mais il retourne une position, pas une valeur booléenne. J'ai dû écrire une solution de contournement : $url = "https://example.com"; if (strpos($url, "https://") === 0) { echo "Commence par https"; } Cela fonctionne, mais ce n'est pas élégant. Il faut constamment écrire === 0, ce qui est facile à oublier ou à confondre avec !== false. Existe-t-il une manière plus élégante ? Peut-être une fonction intégrée ou une construction courte ? Je serais reconnaissant pour des exemples de code et une explication de leur fonctionnement. Merci ! <<>>

Meilleure méthode : utiliser str_starts_with() (PHP 8.0+)

Depuis PHP 8.0, le langage dispose d'une fonction intégrée str_starts_with() qui fait exactement ce dont vous avez besoin. Elle retourne