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 — Harf büyüklüğüne duyarsız olarak bir dizgede ilk sesletim biriminin yerini bulur
Yordamsal kullanım
Harf büyüklüğüne duyarsız olarak bir dizgede ilk sesletim biriminin yerini bulur.
samanlıkAramanın yapılacağı dizge. Geçerli bir UTF-8 dizgesi olmalıdır.
iğneAranacak dizge. Geçerli bir UTF-8 dizgesi olmalıdır.
başlangıç
       samanlık içinde aramanın başlatılacağı yeri
       belirten isteğe bağlı bağımsız değişken. Konum, bayt veya karakter değil,
       sesletim birimi cinsinden belirtilmelidir. Belirtilmezse sıfır
       öntanımlıdır. Döndürülen konum, belirtilen
       başlangıç konumuna göre değil,
       samanlık dizgesinin başlangıcına göredir.
       Negatif başlangıç samanlık
       dizgesinin sonundan itibaren sayılır.
      
   Konumu bir tamsayı olarak döndürür. iğne bulunamazsa
   işlev false döndürür.
  
| Sürüm: | Açıklama | 
|---|---|
| 7.1.0 | başlangıçartık negatif olabiliyor. | 
Örnek 1 - grapheme_stripos() örneği
<?php
$char_a_ring_nfd = "a\xCC\x8A";      // 'å' (U+00E5) normalleştirme biçimi "D"
$char_o_diaeresis_nfd = "o\xCC\x88"; // 'ö' (U+00F6) normalleştirme biçimi "D"
$char_O_diaeresis_nfd = "O\xCC\x88"; // 'Ö' (U+00D6) normalleştirme biçimi "D"
print grapheme_stripos( $char_a_ring_nfd . $char_a_ring_nfd .
                        $char_o_diaeresis_nfd, $char_O_diaeresis_nfd);
?>Yukarıdaki örneğin çıktısı:
2
