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 — Find position (in grapheme units) of first occurrence of a case-insensitive string
Prozeduraler Stil
Find position (in grapheme units) of first occurrence of a case-insensitive string
haystack
The string to look in. Must be valid UTF-8.
needle
The string to look for. Must be valid UTF-8.
offset
The optional offset
parameter allows you to specify where in haystack
to
start searching as an offset in grapheme units (not bytes or characters).
If the offset is negative, it is treated relative to the end of the string.
The position returned is still relative to the beginning of haystack
regardless of the value of offset
.
Returns the position as an integer. If needle
is not found, grapheme_stripos() will return false
.
Version | Beschreibung |
---|---|
7.1.0 |
Support for negative offset s has been added.
|
Beispiel #1 grapheme_stripos() example
<?php
$char_a_ring_nfd = "a\xCC\x8A"; // 'LATIN SMALL LETTER A WITH RING ABOVE' (U+00E5) normalization form "D"
$char_o_diaeresis_nfd = "o\xCC\x88"; // 'LATIN SMALL LETTER O WITH DIAERESIS' (U+00F6) normalization form "D"
$char_O_diaeresis_nfd = "O\xCC\x88"; // 'LATIN CAPITAL LETTER O WITH DIAERESIS' (U+00D6) normalization form "D"
print grapheme_stripos( $char_a_ring_nfd . $char_a_ring_nfd . $char_o_diaeresis_nfd, $char_O_diaeresis_nfd);
?>
Das oben gezeigte Beispiel erzeugt folgende Ausgabe:
2