PHP’de Constants(Sabitler)

Değişkenler program içinde verilerle çalışmayı sağlayan sembolik kavramlardır. Bu kavramlar içinde farklı tiplerde veriler tutulabilir. Yine program içinde bir değişken içindeki veri değiştirilebilir. Bazı durumlarda program içinde hiç değişmeyen verilere ihtiyaç duyabiliriz. Bu durumda karşımıza sabit kavramı çıkar. Sabitler, değişkenlerde olduğu gibi verilerle çalışmayı sağlar. Ancak değişkenlerden farklı olarak sabit içindeki veri daha sonra değiştirilemez.

Sabit Tanımlamak

PHP’de sabit tanımlamak için define() metodunu kullanırız. Bu metodun syntax’ı aşağıdaki gibidir.

define(sabitIsmi, değer, büyük/küçük harf duyarlılığı)

Şimdi bu metot ile gelen parametreleri inceleyelim.

sabitIsmi: Sabitin adını belirten parametre. Değişkenlerden farklı olarak sabit isminin başına $ işareti eklenmez.

değer: Sabitin değerini belirten parametre.

büyük/küçük harf duyarlılığı: Sabit isminin küçük/büyük harfe duyarlı olup olmadığını belirtir. Buraya boolean tipinde bir değer verilir ve varsayılan olarak false değerine sahiptir. Eğer false olarak bırakılırsa, sabit ismi küçük/büyük harfe karşı duyarlı olur. True verildiği zaman ise küçük/büyük harfe karşı duyarsız olur. Bunu örnek bir kod üzerinde görelim.

<?php
define("msg", "Merhaba bu ilk sabitimiz.");
echo msg;
?>

Bu satırların ekran çıktısı aşağıdaki gibi olur.

Bu kodu aşağıdaki gibi değiştirelim.

<?php
define("msg", "Merhaba bu ilk sabitimiz.");
echo MSG;
?>

Yukarıda “msg” olarak yazılan sabit ismini echo içinde “MSG” olarak kullandık. Üçüncü parametre false değerine sahip olduğundan dolayı ekran aşağıdaki hata ile karşılaşırız.

Hatada “MSG” isimli bir sabitin tanımlı olmadığı uyarı verilmektedir.

Şimdi kodu aşağıdaki gibi düzenleyelim.

<?php
define("msg", "Merhaba bu ilk sabitimiz.",true);
echo MSG;
?>

Yukarıda define() metodu ile gelen üçüncü parametreye true değerini verdik. Böyle bir kullanımda sabit ismi, küçük/büyük harfe karşı duyarsız olur. Sistem “msg” ve “MSG” isimlerini farklı yazılsa bile aynı karakterlere aynı sıraya sahip olduğu için herhangi bir hata vermez.

Sabitler, değişkenlerden farklı olarak sahip oldukları veriyi program içinde daha sonra değiştiremezler. Bir diğer fark ise sabitlerin değişkenlerden farklı olarak program içinde global olmasıdır. Yani tanımlanan bir sabit her yerden erişime açık olarak kullanılabilir.

Örneğin hatırlatma amaçlı aşağıda verilen program kodu hata verecektir. Çünkü değişken ismi metot içinde global olmadığından kullanılamaz ve hata verir.


<?php

$number = 13;

function myMethod() {

echo $number;

}

myMethod();

?>

 

Aynı kodu değiştirelim ve sabit tanımlayalım. Bakalım sonuç ne olacak.


<?php
define("number", 13);
function myMethod() {
    echo number;</span>
}
myMethod();
?> 

 


Görüleceği üzere ekranda 13 değerini okuruz.

Sonraki yazımda buraya kadar anlattıklarımla ilgili örnek soruları yayınlayacağım. Başarılar diliyorum…