87 of 410 menu

Fonction strpos

La fonction strpos renvoie la position de la première occurrence d'une sous-chaîne dans une autre chaîne ou false si la sous-chaîne n'est pas trouvée. Le premier paramètre de la fonction est la chaîne dans laquelle la recherche est effectuée, le deuxième paramètre est la sous-chaîne à rechercher.

Par défaut, la fonction recherche depuis le début de la chaîne jusqu'à la première correspondance. Le début de la recherche peut être ajusté avec un troisième paramètre optionnel - s'il est spécifié, la recherche ne commencera pas au début de la chaîne, mais à partir de la position indiquée.

Il existe aussi la fonction stripos, qui fait la même chose, mais sans tenir compte de la casse.

Syntaxe

strpos(string $haystack, string $needle, int $offset = 0): int|false

Exemple

Dans cet exemple, la fonction renverra la position du premier caractère 'c'. Il occupe la position 2, puisque le décompte commence à 0 :

<?php echo strpos('abcde abcde', 'c'); ?>

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

2

Exemple

Dans cet exemple, le troisième paramètre est spécifié et par conséquent la recherche commencera à la troisième position, dans ce cas la fonction trouvera le deuxième caractère 'c' et affichera sa position - 8 :

<?php echo strpos('abcde abcde', 'c', 3); ?>

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

8

Exemple

Si la sous-chaîne n'est pas trouvée - la fonction renverra false. Si la chaîne se trouve au début, la fonction renverra 0. Cela peut poser problème lors d'une comparaison via une condition courte :

<?php if (strpos('http://site.ru', 'http://')) { echo '+++'; } else { echo '---'; } ?>

Résultat de l'exécution du code (pas celui auquel nous nous attendions) :

'---'

Exemple

Effectuons une vérification correcte du début de la chaîne :

<?php if (strpos('http://site.ru', 'http://') === 0) { echo '+++'; } else { echo '---'; } ?>

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

'+++'

Voir aussi

  • la fonction strrpos,
    qui renvoie la position de la dernière occurrence d'une sous-chaîne
  • la fonction str_contains,
    qui vérifie la présence d'un caractère dans une chaîne
  • la fonction str_starts_with,
    qui vérifie le début d'une chaîne
  • la fonction str_ends_with,
    qui vérifie la fin d'une chaîne
  • la fonction array_search,
    qui effectue une recherche dans un tableau
Français
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Nous utilisons des cookies pour le fonctionnement du site, l'analyse et la personnalisation. Le traitement des données est effectué conformément à la Politique de confidentialité.
accepter tout personnaliser refuser