PHP, çalışan her betiğin erişebileceği çok sayıda öntanımlı sabit'e sahiptir. Öte yandan, bu sabitlerin çoğu, çeşitli eklentiler tarafından tanımlandığından, sadece eklenti bir modül olarak veya PHP içinde derlenmişse kullanılabilir.
Değerleri kullanıldıkları yere göre değişen sekiz sihirli sabit vardır.
Örneğin, __LINE__
sabitinin değeri betiğin hangi
satırında kullanıldığına bağlıdır. Bu özel sabitler büyük-küçük harf
farkına duyarsızdır ve aşağıda listelenmişlerdir:
İsim | Açıklama |
---|---|
__LINE__ |
Dosyada bu sabitin bulunduğu satırın numarası. |
__FILE__ |
Dosyanın veya sembolik bağdan çözümlenen dosyanın tam dosya yolu ve dosya ismi. include işlevi ile betiğe eklenen bir dosyanın içinde kullanıldığında betiğin ismini değil, eklenen dosyanın ismini içerir. |
__DIR__ |
Dosyanın bulurduğu dizin. Dahil edilen bir dosyanın içinde kullanıldığında dahil edilen dosyanın dizini döner. Bu dirname(__FILE__) işlevine eşdeğerder. Bu dizin isminin sonuna bir kök dizin olmadıkça bir bölü imi konmaz. |
__FUNCTION__ |
İşlev ismi. |
__CLASS__ |
Sınıf ismi. Bbildirildiği isim alanını (Foo\Bar gibi) içerir. PHP 5.4 ve sonrasında __CLASS__ ayrıca kalıtsal özelliklerin içinde de çalışır. Böyle bir yöntemin içinde kullanıldığında __CLASS__, kalıtsal özelliğin içinde kullanıldığı sınıfın ismidir. |
__TRAIT__ |
Kalıtsal özellik ismi. Bildirildiği isim alanını (Foo\Bar gibi) içerir. |
__METHOD__ |
Yöntem ismi. |
__NAMESPACE__ |
Geçerli isim alanının adı. |
Ayrıca bakınız: get_class(), get_object_vars(), file_exists() ve function_exists().
Sürüm: | Açıklama |
---|---|
5.4.0 |
__TRAIT__ sabiti eklendi
|
5.3.0 |
__DIR__ ve __NAMESPACE__
sabitleri eklendi
|
5.0.0 |
__METHOD__ sabiti eklendi
|
5.0.0 | Bu sürümden önce bazı sihirli sabitlerin değerleri daima küçük harfliydi. Şimdi bunların hepsi harf büyüklüğüne duyarlıdır (isimler bildirildikleri gibi içerilir). |
4.3.0 |
__FUNCTION__ ve __CLASS__
sabitleri eklendi
|
4.0.2 |
__FILE__ daima sembolik bağları çözümlenmiş
mutlak bir yol içerir, halbuki eski sürümlerde bazı durumlarda göreli
yollar da içerirdi.
|