(PHP 5, PHP 7, PHP 8)
stripos — Harf büyüklüğüne duyarsız olarak bir alt dizgenin ilkinin konumunu bulur
samanlık dizgesi içindeki ilk
iğne dizgesinin sayısal konumunu döndürür.
strpos() işlevinden farklı olarak, stripos() harf büyüklüğüne duyarsızdır.
samanlıkAramanın yapılacağı dizge.
iğneAranacak dizge.
PHP 8.0.0 öncesinde, iğne bir dizge değilse, bir
tamsayıya dönüştürülür ve bir karakterin sıra değeri olarak uygulanırdı.
PHP 7.3.0 itibariyle bu davranışın kullanımı önerilmemekte ve güvenilmemesi
önerilmektedir. Amaçlanan davranışa bağlı olarak,
iğne ya doğrudan dizgeye çarpıtılmalı ya da doğrudan
bir chr() çağrısı yapılmalıdır.
başlangıç
Seçimlik başlangıç bağımsız değişkeniyle aramanın
samanlık içinde kaçıncı karakterden
başlayacağını belirtebilirsiniz. Negatif bir değer belirtilmişse arama
sondan başlangıçınc karakterden başlar.
Dönen konum yine de samanlık dizgesinin başına
göre olacaktır.
Konumu samanlık dizgesinin başına göre (başlangıçtan bağımsız) bir tamsayı olarak döndürür.Dizgenin ilk karakterinin konumu 1 değil 0'dır. Eğer iğne bulunamazsa false döner.
Bu işlev mantıksal false
değeriyle dönebileceği gibi false olarak değerlendirilebilecek mantıksal
olmayan bir değerle de dönebilir. Bu konuda daha fazla bilgi
Mantıksal Değerler bölümünde
bulunabilir. Bu işlevden dönen değeri sınamak için
===
işleci kullanılabilir.
| Sürüm: | Açıklama |
|---|---|
| 8.2.0 | Büyük/küçük harf dönüşümü yalnızca ASCII karakterlere (baytlara) uygulandığından yerelin setlocale() ile atanması artık gerekmiyor. ASCII olmayan karakterlerin bayt değerleri karşılaştırılıyor. |
| 8.0.0 |
iğne artık boş dizge kabul ediyor.
|
| 8.0.0 |
iğne olarak bir tamsayı aktarımı artık kabul
edilmiyor.
|
| 7.3.0 |
iğne olarak bir tamsayı aktarımı artık
önerilmiyor.
|
| 7.1.0 |
başlangıçs artık negatif olabiliyor.
|
Örnek 1 - stripos() örnekleri
<?php
$findme = 'a';
$mystring1 = 'xyz';
$mystring2 = 'ABC';
$pos1 = stripos($mystring1, $findme);
$pos2 = stripos($mystring2, $findme);
// 'a' kesinlikle 'xyz' içinde yoktur
if ($pos1 === false) {
echo "'$mystring1' dizgesinde '$findme' dizgesi yok";
}
// 'a' 0. karakter olduğundan == işleci beklendiği gibi
// çalışmayacaktır. Bu yüzden === kullanmaya çalışın.
if ($pos2 !== false) {
echo "'$mystring1' dizgesinin $pos2. karakterinde bir '$findme' dizgesi var";
}
?>Bilginize: Bu işlev ikil dosyalarla çalışırken dosya içeriğini değiştirmez.