As expected, grapheme_stripos() does return boolean FALSE if the needle is not found in the haystack.
Use strict type comparison to check for that condition, like:
if (FALSE === grapheme_stripos('a', 'b')) {print 'Needle not found';}
(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL intl >= 1.0.0)
grapheme_stripos — Trouve la position en graphème de la première occurrence dans une chaîne, insensible à la casse
Style procédural
Trouve la position en graphème de la première occurrence dans une chaîne, en effectuant une recherche insensible à la casse.
haystack
La chaîne à étudier. Elle doit être au format UTF-8 valide.
needle
La chaîne à rechercher. Elle doit être au format UTF-8 valide.
offset
Le paramètre offset
permet de spécifier la position dans la haystack
de début de recherche, exprimée en graphème (et non pas en octets ou caractères).
Si l'offset est négatif, il est traité par rapport à la fin de
la chaîne de caractères.
La position retournée est toujours donnée par rapport au début de
haystack
, quelque soit la valeur de offset
.
Retourne la position, sous forme d'un entier. Si needle
n'est pas trouvé,
grapheme_stripos() retourne false
.
Version | Description |
---|---|
7.1.0 |
Ajout du support des offset s négatifs.
|
Exemple #1 Exemple avec grapheme_stripos()
<?php
$char_a_ring_nfd = "a\xCC\x8A"; // 'LATIN SMALL LETTER A WITH RING ABOVE' (U+00E5) forme normalisée "D"
$char_o_diaeresis_nfd = "o\xCC\x88"; // 'LATIN SMALL LETTER O WITH DIAERESIS' (U+00F6) forme normalisée "D"
$char_O_diaeresis_nfd = "O\xCC\x88"; // 'LATIN CAPITAL LETTER O WITH DIAERESIS' (U+00D6) forme normalisée "D"
print grapheme_stripos( $char_a_ring_nfd . $char_a_ring_nfd . $char_o_diaeresis_nfd, $char_O_diaeresis_nfd);
?>
L'exemple ci-dessus va afficher :
2