Php kütüphanesindeki önemli fonksiyonlardan bir tanesi de substr()
fonksiyonudur. Karakter grubu üzerindeki belirlenen bölgeyi almaya
yarar. Yani bir isim veya bir cümle üzerindeki belli bir parçayı
kopyalayıp belirlediğimiz değişkene atamaya yarar.
substr() Fonksiyonu Kullanımı:
substr ($degisken, $baslangic, $sayi) şeklinde 3 adet bölüme sahiptir bunları inceleyecek olursak;
- $degisken: Bu kısım işlemi yapacağımız cümle veya karakter grubunun bulunduğu değişkeni içerir.
- $baslangic: Değişken içinde hangi karakterden başlanacağını bu belirler. (-) negatif değerler alabilir.
- $sayi: Başlangıç karakterinden itibaren kaç karakterin kopyalanacağını belirler.
substr() Fonksiyon Örnekleri:
İlk örneğimizde "Php deneme ve örnekler" adlı cümlemizdeki
ilk 5 karakteri belirlediğimiz değişkene atamaya yarayan bir php kod
hazırlayalım.
<? php
$degisken = 'Php deneme ve örnekler';
$sonhali = substr($degisken, 0, 5); // "Php d"
?>
Sonuç olarak yeni değişkenimize "Php d" değeri atanacaktır.
Yeni örneğimizde ise aynı cümlenin sondan 5 karakterini değişken içine atayalım. Bu örnekteki başlangıç değerinin -5 olmasına dikkat
edelim. Yani geriye doğru 5 karakter say anlamındadır. Geriye doğru ilk
karakteri, cümledeki son harf olan "r" olduğunu biliniz. Geriye doğru
ikinci karakter ise "e" dir.
<? php
$degisken = 'Php deneme ve örnekler';
$sonhali = substr($degisken, -5, 5); // "ekler"
?>
Sonuç olarak yeni değişkenimize "ekler" değeri atanacaktır.
Mesela elimizdeki kelime sayısından daha çok bir kopyalama işlemi
yapılmaya çalışılırsa; Örnek olarak değişkenimiz "Elma" olsun burada
seçilen 13 karakter say komutunun bir işlevi olmayacaktır. Çünkü
değişkenimiz sadece 4 karakterdir ve 4 karakter üstünde işlem
yapılmayacaktır.
<? php
$degisken = 'Elma';
$sonhali = substr($degisken, 0, 13); // "Elma"
?>
Sonuç olarak yeni değişkenimize "Elma" değeri atanacaktır.
Bu örneğimizde ise yukarıdaki cümlenin 4. karakterinden itibaren 12 karakterini kopyalamak istersek.
<? php
$degisken = 'Php deneme ve örnekler';
$sonhali = substr($degisken, 3, 12); // "deneme ve ör"
?>
Sonuç olarak yeni değişkenimize "deneme ve ör" değeri atanacaktır.
Burada dikkat edilmesi gereken başlangıç karakteri 0 dan
başlamaktadır yani 4. karakterden başlamak istersek yapmamız gereken
başlangıç bölümünü 3 yapmak olacaktır. Yukarıdaki örnekte anlatmak
istediğimiz gözükmektedir.
Son örneğimizde ise gösterilecek karakter sayısı 20 den fazla olduğu
zaman tabloda ve tasarımda bozukluk oluşturacak bir kodu engellemek için
20 karakterden fazlasını gösterirken ilk 17 karakteri alan ve son 3
karakter yerine nokta koyan yani sonuç olarak tablo içinde 20 karakter
gösteren bir kod uygulamasını inceleyelim. Örnekte ayrıca değişken
içindeki karakter sayısını saymak için
strlen() fonksiyonu kullanılmıştır.
<? php
$degisken = 'Tablo içinde gösterilecek olan değişken';
if (strlen($degisken) > 20) {
$sonhali = substr($degisken, 0, 12); // "Tablo içinde göst"
$sonhali = $sonhali . '...';
}
?>
Sonuç olarak yeni değişkenimize "Tablo içinde göst..." değeri atanacaktır.
Bu fonksiyon ile uygulamalarımızda birçok işlem yapabiliriz. Mesela
tablo içinde yeterli olmayan bölgelerde kısaltma işlemi yapabilir veya
devamı için tıklayınız şeklinde özellikle makale scriptlerinde kullanılan uygulamalar geliştirebiliriz.