PHP strpos() fonksiyonu nedir? PHP strpos() fonksiyonu Ne İşe Yarar?

PHP string içerisinde arama yapmak için kullanılan bu fonskiyon nedir ve nasıl kullanılır bunu inceleyelim. PHP string içerisinde belirl ibir kelime yada harfin yerini bulmak için kullanırız.
strpos()
fonksiyonu, PHP'de kullanılan bir dizge işleme fonksiyonudur. Bu fonksiyon, bir dizgenin içinde belirli bir alt dizgenin konumunu bulmaya yarar.
strpos()
fonksiyonunun kullanımı şu şekildedir:
Bu fonksiyon, $dizge
içinde $aranan
alt dizgesini arar. Eğer alt dizge bulunursa, ilk bulunan konumun indisini döndürür. Bulunamazsa false
değerini döndürür.
$dizge
: İçinde arama yapılacak olan ana dizge.$aranan
: Bulunması istenen alt dizge.$başlangıç
(isteğe bağlı): Aramanın başlayacağı dizgenin indis değeri. Varsayılan olarak 0'dır.
Örnek kullanım:
$aranan = "dünya";
$sonuc = strpos($dizge, $aranan);
if ($sonuc === false) {
echo "Alt dizge bulunamadı.";
} else {
echo "Alt dizge $sonuc indisinde bulundu.";
}
Yukarıdaki örnekte, "Merhaba, dünya!" dizgesi içinde "dünya" alt dizgesini arıyoruz. Eğer alt dizge bulunursa, sonucuyla birlikte bulunduğu indis değerini ekrana yazdırıyoruz. Bulunamazsa "Alt dizge bulunamadı." mesajını ekrana yazdırıyoruz.
1- Fonksiyonun Dönüş Değerleri:
- Eğer
$aranan
alt dizgesi bulunursa,strpos()
fonksiyonu ilk bulunan konumun indisini döndürür. İndis değeri 0'dan başlar. - Eğer
$aranan
alt dizgesi bulunamazsa, fonksiyonfalse
değerini döndürür.
2- Tür Kontrolü:
strpos()
fonksiyonunun dönüş değerini kontrol etmek için "katı eşitlik" (===
) operatörünü kullanmanız önemlidir. Çünkü alt dizge bulunamadığında dönen değer 0 olabilir ve bu durumda yanlış bir sonuç alabilirsiniz.===
operatörü, hem değerleri hem de türleri kontrol eder.
3- Başlangıç İndisi:
- İkinci isteğe bağlı parametre olan
$başlangıç
değeri, aramanın başlayacağı dizgenin indisini belirler. Bu sayede istediğiniz bir konumdan itibaren arama yapabilirsiniz. Varsayılan olarak 0'dır. - Örneğin,
$başlangıç
değerini 5 olarak belirtirseniz, arama işlemi dizgenin 5. indisinden başlayacaktır.
Örneğin;
$aranan = "dünya";
$ilkBulunan = strpos($dizge, $aranan);
$ikinciBulunan = strpos($dizge, $aranan, $ilkBulunan + 1);
if ($ilkBulunan === false) {
echo "Alt dizge bulunamadı.";
} else {
echo "İlk alt dizge $ilkBulunan indisinde bulundu.";
if ($ikinciBulunan === false) {
echo " İkinci alt dizge bulunamadı.";
} else {
echo " İkinci alt dizge $ikinciBulunan indisinde bulundu.";
}
}
Yukarıdaki örnekte, $dizge
içindeki iki farklı "dünya" alt dizgesini bulmak için strpos()
fonksiyonunu iki kez kullanıyoruz. İlk bulunan alt dizgeyi bulduktan sonra, ikinci aramanın başlangıç konumunu ilk bulunan indisin bir sonrası olarak belirliyoruz.
Bu şekilde strpos()
fonksiyonunu kullanarak bir dizge içinde birden fazla alt dizgeyi bulma ve konumlarını tespit etme işlemlerini gerçekleştirebilirsiniz.