PHP’de strpos Fonksiyonunun Kullanımı
- Tarih: 14 Ocak 2017
- Yorum: 0
- Kategori: Php
strpos fonksiyonu PHP’de bir stringde ‘bulma’ işlemleri yapmaktır. Cümle biraz karışık olduysa örneklere bir gözatın isterseniz.
Kullanımı: strpos($metin, $aranacak_deger,$kacinci_siradan_baslayacak);
Not: $kacinci_siradan_baslayacak bölümünü kullanmayabilirsiniz.
Örnek1:
15
<?php
$metin = "ali okul gitti ama..";
$sonuc = strpos($metin,"a");
if ($sonuc === false)
{
echo "Hayır böyle bir şey yok.";
}
else
{
echo "Evet! Metinde aradığınız değeri bulundu!";
echo "<br>";
echo "Aradığınız değer metinde " . $sonuc . ". sırada bulundu";
}
?>
Kodu incelediyseniz $sonuc değişkeninde, bulunan ilk sonucun kaçıncı sırada olduğunu öğrenebiliyoruz. Üstteki kodu çalıştırırsanız ilk sonucun 0. sırada olduğunu öğrenebilirsiniz.
Peki niye === false kullandık?
Şimdi programlamayı bir kenara koyun. Bilgisayarın çalışma mantığı çok basit bir olaya dayanmaktadır. 1 ve 0. Evet bilgisayarın temeli aslında 1 ve 0’dır. Bunu laf olsun diye söylemiyorum. Bilgisayarda yazdığınız her bir karakter aslında bilgisayarda 1 ve 0’lar ile belli bir düzene göre sıralanır. Örneğin siz bilgisayara A harfi yazdığınızda bilgisayara bu (bu kodlama muhtemelen yanlıştır, şu an örnek vermek amacıyla yazdım) 10101101 gibi kodlanarak yollanıyor.
Evet şimdi niye !== false kullandık ondan bahsedelim. 1 ve 0’a bir çeşit True-False diyebiliriz.
$sonuc değişkeninin bize bulunan harfin kaçıncı sırada olduğunu anlattığını söylemiştik. Farkettiyeniz bu kodda 0. sırada buldu harfi. Tabii bilgisayar bunu bizim gibi rakam olan 0’ı algılamıyor, False olan 0’ı algılıyor. $sonuc == false yapsaydım 0==false olacaktı ve sonuç doğru olacaktı. Yani false == false olacaktı. Ama $sonuc === false yaparak bu sorunu ortadan kaldırıyoruz. Yeri gelmişken söyleyeyim nasıl == simgesini tersi != ise === işaretinin terside !== işaretidir.
Diğer bir örnekle bitirelim:
<?php
$text = "ali okula gitti ama.";
$sonuc = strpos($text,"a",1);
if($sonuc !== false)
{
echo "Evet! Metinde aradığınız değeri bulundu!";
echo "<br>";
echo "Aradığınız değer metinde " . $sonuc . ". sırada bulundu";
}
else
{
echo "Aranılan değer bulunamadı";
}
?>
strpos($text,”a”,1)
Buradaki 1, a harfini $text değişkeninin içinde kaçıncı sıradan aramaya başlanacağını belirtir. ali’deki a harfi 0. sıradadır.
Yorumlar 0