(PHP 4, PHP 5)
strpos — Trouve la position d'un caractère dans une chaîne
strpos() retourne la position numérique de la première occurrence de needle dans la chaîne de caractères haystack . Contrairement à la fonction strrpos() avant PHP 5, celle-ci peut prendre une chaîne de caractères complète comme paramètre needle et cette chaîne sera utilisée en totalité.
Si needle n'est pas trouvée, la fonction retourne FALSE .
Cette fonction peut retourner FALSE , mais elle peut aussi retourner une valeur équivalent à FALSE , utilisable dans une condition if simple. Utilisez l'opérateur === pour tester la valeur de retour exacte de cette fonction.
Note: Cette fonction gère les chaînes binaires.
Exemple 2635. Exemple avec strpos()
<?php
$mystring
=
'abc'
;
$findme
=
'a'
;
$pos
=
strpos
(
$mystring
,
$findme
);
// Notez l'utilisation de ===. Un simple == ne donnerait pas le résultat escompté
// car la lettre 'a' est à la position 0 (la première).
if (
$pos
===
false
) {
echo
"La chaîne '$findme' n'a pas été trouvée dans la chaîne '$mystring'"
;
} else {
echo
"La chaîne '$findme' a été trouvée dans la chaîne '$mystring'"
;
echo
" et à la position $pos"
;
}
// On peut chercher le caractère, en ignorant tout avant une position
$newstring
=
'abcdef abcdef'
;
$pos
=
strpos
(
$newstring
,
'a'
,
1
);
// $pos = 7, pas 0
?>
Si needle n'est pas une chaîne, il est converti en entier, et utilisé comme caractère de code ASCII correspondant.
Le paramètre optionnel offset vous permet de spécifier à partir de quel caractère dans haystack vous souhaitez commencer la recherche. La position retournée sera toujours relative au début de la chaîne haystack .
Voir aussi strrpos() , stripos() , strripos() , strrchr() , substr() , stristr() et strstr() .