Sabitler

İçindekiler

Bir sabit basit bir değerin betimleyicisidir (ismidir). İsminden de anlaşılacağı gibi, betiğin çalışması sırasında bu değer değiştirilemez (aslında birer sabit olmayan sihirli sabitler hariç). Sabitler harf büyüklüğüne duyarlıdır. Geleneksel olarak, sabit isimleri daima büyük harfle yazılır.

Bilginize:

PHP 8.0.0'dan önce, define() işlevi kullanılarak tanımlanan sabitler harf büyüklüğüne duyarsız olabilir.

Bir sabite verilen isim PHP'de varolan diğer tüm isimlerle aynı kurallara tabidir. Geçerli bir sabit ismi bir harfle ya da alt çizgi imi ile başlar, herhangi bir sayıda harf, rakam ya da alt çizgi ile devam eder. Bir sabit ismi düzenli ifade olarak, şu şekilde ifade edilebilir: ^[a-zA-Z_\x80-\xff][a-zA-Z0-9_\x80-\xff]*$

Geçersiz ismleri ve PHP kullanımına ayrılmış isimleri define() işlevi ile tanımlamak mümkünse de bunların değeri sadece constant() işlevi ile elde edilebilir. Ancak, bu tavsiye edilmez.

İpucu

Ayrıca Kullanıcı Alanı İsimlendirme Kılavuzu belgesine de bakılabilir.

Örnek 1 - Geçerli ve geçersiz sabit isimleri

<?php

// Geçerli sabit isimleri
define("FOO", "bir şey");
define("FOO2", "başka bir şey");
define("FOO_BAR", "daha başka bir şey");

// Geçersiz sabit isimleri
define("2FOO", "bir şey");

// Bu geçerli olmasına rağmen kullanmaktan kaçınılmalıdır.
// PHP bir gün betiğinizin çalışmasını bozacak bir sihirli
// sabit kullanmaya karar verebilir.
define("__FOO__", "bir şey");

?>

Bilginize: Burada bir harften söz ettiğimiz zaman, ASCII a-Z, A-Z ve karakter kodu 128-255 (0x80-0xff) arasındaki bir karakterden bahsetmiş oluyoruz.

Süper küresellerde olduğu gibi, sabitlerin etki alanı da küreseldir. Sabitlere etki alanı dikkate alınmaksızın bir komut dosyasının herhangi bir yerinden erişilebilir."Etki alanı" hakkında daha ayrıntılı bilgi edinmek için Değişken Etki Alanı bölümünü okuyunuz.

Bilginize: PHP 7.4.0'dan itibaren, bir sınıf sabitinin görünürlüğü protected veya private olarak bildirebilir, bu da onları yalnızca tanımlandığı sınıfın hiyerarşik etki alanında kullanılabilir hale getirir.

To Top