Fonction strpos() | Développement Web

Fonction strpos()

La fonction strpos retourne la position de la première occurrence d’une chaîne $string2 dans une autre chaîne $string1.

Utilisation de la fonction strpos()

La signature de la fonction strpos est la suivante :

strpos ( $string1 , $string2 );


   $string1 = 'Fonction strpos';
   $string2 = 'str';

   echo (strpos($string1 , $string2 ));

   /* Affiche : 9 .
   Cela correspond à la position de la première lettre de $string2 dans $string1. */   

NB : si $string2 n’est pas trouvée dans $string1, la fonction strpos retourne false.

Pour tester la présence d’une chaîne dans une autre, il est donc primordial d’utiliser l’opérateur === qui vérifiera en outre le type de la valeur retournée. Car si la chaîne est trouvée et que celle-ci se trouve à la position 0, le test == ne fera pas la différence entre false et 0. La valeur de retour du test pourrait donc être érronée.


   $string1 = 'Fonction strpos';
   $string2 = 'Fonc';

   if ( strpos( $string1 , $string2 ) === false )
     echo 'Chaîne non trouvée';
   else
     echo 'La chaîne a été détectée';

   /* Affiche : La chaîne a été détectée .
   Dans cet exemple, la fonction strpos a retourné 0 car la chaîne détectée
   commence à la position 0 de la chaîne de référence.
   Le test == aurait donc retourné false. Ici, le test === a en revanche
   retourné true. Enfin plutôt 0 mais pas false. */   

La fonction strrpos retourne quant à elle la position de la dernière occurrence de la chaîne $string2 dans la chaîne $string1.