Fonction mb_strpos

La fonction mb_strpos recherche la position de la première occurrence d'une sous-chaîne dans une chaîne avec support des encodages multioctets (par exemple, UTF-8). Le premier paramètre est la chaîne dans laquelle effectuer la recherche, le second est la sous-chaîne recherchée, le troisième (optionnel) est la position de début de recherche, le quatrième (optionnel) est l'encodage.

Syntaxe

phpmb_strpos(string $haystack, string $needle, int $offset = 0, ?string $encoding = null): int|false

Exemple

Trouvons la position d'une sous-chaîne dans une chaîne :

php<?php
  $res = mb_strpos('abcde', 'b');
  echo $res;
?>

Résultat de l'exécution du code :

php1

Exemple

Recherche avec indication de la position de début de recherche (à partir du 3ème caractère) :

php<?php
  $res = mb_strpos('abcabc', 'a', 2);
  echo $res;
?>

Résultat de l'exécution du code :

php3

Exemple

Recherche dans une chaîne avec caractères cyrilliques (UTF-8) :

php<?php
  $res = mb_strpos('абвгде', 'в', 0, 'UTF-8');
  echo $res;
?>

Résultat de l'exécution du code :

php2

Voir aussi

  • la fonction strpos,
    qui recherche la position d'une sous-chaîne sans tenir compte des encodages multioctets
  • la fonction mb_strlen,
    qui retourne la longueur d'une chaîne en tenant compte des encodages multioctets