Çarşamba

PHP Değişken çeşitleri nelerdir ?

Php bizi değişken tanımlama konusunda büyük bir külfetten kurtarıyor. Php de değişken tanımlamak birçok programlama ve script dilinde olanın aksine belirli bir program bloğunda tanımlanmaz. Değişkenler gerektiğinde içine değer gönderilerek tanımlanır. "İçine değer gönderilerek" cümlesine dikkat ettiyseniz php de değişkenlerin tiplerini de tanımlamaya gerek yoktur. Değişkenler içerisine atılan değerlere göre tip alırlar.[...] 

Aşağıda bazı değişken tipleri ve aldığı değerleri inceleyelim.

Tamsayı (Integer): 5,124, 9834 gibiÇift (Double): 3,567 gibiAlfanümerik (String): "Reşit" gibiMantıksal (Boolean): doğru (true)/yanlış (false) gibiNesne (Object)Dizi (Array)

Bazı uzmanlara göre, gerçekte PHP'de mantıksal (boolean) değişken türü yoktur. B kanının sebebi, PHP'nin true (doğru) ya da false (yanlış) olarak atadığımız değerleri 1 ve boş/null değerlere çevirmesi, mantıksal olarak sorgulandığında 0 dışındaki tam ve ondalık değişkenleri TRUE, 0'ı FALSE sayması, ve boş alfanümerik değişkenleri FALSE, dolu alfanümerik değişkenleri ise TRUE olarak değerlendirmesidir.

Şimdi de php de değişkenlerin nasıl tanımlanması gerektiğine;

Php de değişkenler başlarına özel bir karakter "$" getirilerek tanımlanırlar php yorumlayıcısı bu karakteri gördüğünde belleği kontrol ederek o isme sahip değişkenin bellekteki adresinden değerini çağırır. Değişken tanımlarken Türk alfabesinde yer alan fakat İngiliz alfabesinde yer almayan karakterler kullanılamaz. Php'nin diğer bir değişik yanı da sayılarında değişken olarak kullanılabilmesidir. Özel olarak "_" alt çizgi karakterini de değişkenlerin başında kullanılmasına izin verir.
Değişken tanımlamayı somut hale getirebilmek için aşağıdaki örnek kodu inceleyelim.

CODE:


$degisken1 = "hakan"; //Doğru



$değişken1 = "okan"; //Yanlış



$123degisken = 123; //Doğru



$123 = 123; //Doğru



$_123 = "neslihan"; //Doğru



$-degisken1=123;  //Yanlış


?>


PHP'de özel bir değişkene değişken adı olarak kullanılacak değerleri de atayabiliriz: 

CODE:


$adi = "Hakan";

$degisken = "adi";
print $$degisken;
?>


Yukarıda ki kod ekrana hakan kelimesini yazdıracaktır. (print kendinden sonra yazılanları ve ";" e kadar kısmı ekrana yazdırır.)Bu da bize php'nin "" karakteri her gördüğünde belleğe giderek o isimdeki değişkenin değerini çağırdığı gösteriyor. Php $$degisken değişkenini gördüğünde ilk olarak belleği yokluyor ve adı kelimesini buluyor $ karakteri 2 kez kullanıldığı için adı kelimesinin de bir değişken simi olup olmadığını kontrol ediyor ve değişken ise değerini bellekten çağırıyor. 

Bu teknik şöyle de kullaılabilir.

CODE:


$degisken  = "adi";

$$degisken = "Okan";
print "$adi";
print $$degisken;
print "${$degisken}";
print "${'adi'}";
?>


Yukarıdaki 4 print komutu da okan kelimesini yazacaktır. Php Dinamik olarak değişkenlere veriler atana bilir buda & karakteri kullanılarak yapılır. Dinamik atama nedir? Dinamik atama şöyle tanımlayabiliriz. Örneğin $degisken1'e dinamik olarak $degisken2 yi atadık $degisken2'nin değerini değiştirdiğimizde degisken1 inde değeri değişecektir. Bu olayı daha iyi kavaraya bilmek için aşağıdaki örneği inceleyelim.

CODE:


$degisken2  = "Neslihan";

$degisken1 = &$degisken2;

$degisken2 = "Pınar";
print $degisken1;
?>


Yukarıdaki kod ekrana Pınar yazacaktır. Görüldüğü gibi $degisken2 e Pınar verisi atanmasına rağmen $değişken1 in değeri Pınar olmuştur. 

Tipler ve Tip Dönüşümü

Bazen Değişkenimizin tipini değiştirmemiz gerekebilir. C ile uğraşanlar bilir değişkenler arası tip değişimi oldukça külfetli bir iştir. Php bu konuda da imdadımıza yetişiyor. Fakat değişken tipini değiştirmeden önce değişkenimizin tipini nasıl öğreniriz bunu öğrenelim. Bunu php nin gettype(); komutu ile öğreniriz.

CODE:


        $sayi  = 5;

        print("Türü : ");

        print gettype( $sayi ) ; //tamsayi/integer
?>


Yukarıdaki kod ekrana “Türü : integer” şeklinde bir çıktı verir. Eğer $sayi değişkeninin = den sonraki kısmına “Türkay” yazsaydık ekran çıktımız “Türü: string” şeklinde olacaktı.

Hiç yorum yok:

Yorum Gönder