CodeBlanks Logo Icon CodeBlanks

const ile sınıf sabiti

PHP kursu · Orta seviye · Ders 36/115

const anahtar kelimesiyle sınıf sabiti tanımlamayı öğrenirsin.

const ile sınıf sabiti tanımlama

Bir sınıf sabiti (class constant), sınıfa bağlı, değiştirilemeyen (immutable) bir değerdir. PHP'de sınıf içinde const anahtar kelimesiyle tanımlanır.

Sabitler property'lerden farklıdır: başında $ işareti yoktur, değer atandıktan sonra değiştirilemez ve tüm örnekler (instance) arasında paylaşılır.

Örnek: class Circle { const PI = 3.14; }. Burada PI bir sınıf sabitidir. Sabitlere erişimi bir sonraki derste göreceğiz; şimdi tanımlamaya odaklanalım.

Sabit adlandırma ve tür bildirimi

Sınıf sabitlerinin adları genelde BÜYÜK_HARFLİ ve alt çizgeli yazılır: MAX_SIZE, DEFAULT_TIMEOUT, HTTP_OK. Bu yaygın bir adlandırma geleneğidir (convention).

PHP 8.3'te sabitin türünü belirtebilirsin: const float PI = 3.14;. Tür bildirimi opsiyoneldir ama kodu daha açık yapar.

Bir sabite sabit ifade (constant expression) atanabilir: sayı, dize, dizi, başka sabit. Ama değişken ($x) atanamaz. Örnek: const array STATUS = ['active', 'passive']; geçerlidir.

Uygulama Circle sınıfında PI sabiti

Bir Circle sınıfı tanımla. İçinde const float PI = 3.14; sabiti olsun. Sonra echo Circle::PI . "\n"; ile sabiti yazdır. (:: operatörünü sonraki derste detaylı göreceğiz; şimdilik sabiti ekrana basmak için kullan.)

Örnek çözümü göster
:PI . "\n"; yaz.
Örnek çözüm:
<?php
// Circle sınıfını ve PI sabitini tanımla
class Circle {
    const float PI = 3.14;
}
echo Circle::PI . "
";

Kendini test et

  1. Bir sınıf sabitini hangi anahtar kelime tanımlar?

    • function
    • const
    • static
    • define
    Cevabı göster

    const — Doğru. const anahtar kelimesi sınıf içinde sabit tanımlar.

  2. Bir sınıf sabiti tanımla

    class Circle {
        ____
    }
    Cevabı göster
    class Circle {
        const PI = 3.14;
    }
  3. Hangisi geçerli bir sınıf sabiti adıdır?

    • $MAX_RETRY
    • max-retry-count
    • MAX_RETRY_COUNT
    • function MAX_RETRY
    Cevabı göster

    MAX_RETRY_COUNT — Doğru. MAX_RETRY_COUNT geçerli bir sınıf sabiti adıdır: $ yok, tire yok.

Orta seviye bölümündeki tüm dersler