1.9 PHP'de Sabitler

define Fonksiyonu Kullanımı:

PHP'de bir sabit oluşturmak için define fonksiyonunu kullanabilirsiniz. define fonksiyonu üç parametre alır:

define(name, value, case-insensitive);
  1. name: Sabitin adını belirtir.

  2. value: Sabitin değerini belirtir.

  3. case-insensitive: Sabit adının büyük/küçük harfe duyarlı olup olmayacağını belirtir. PHP 8.0 itibariyle bu parametre her zaman false olmalıdır.

Büyük/küçük harfe duyarlı bir ada sahip bir sabit oluşturun:

define("GREETING", "Welcome to Yavuzlar");
echo GREETING;

Büyük/küçük harfe duyarlı olmayan bir ada sahip bir sabit oluşturun:

define("GREETING", "Welcome to Yavuzlar", true);
echo greeting;

const Anahtar Kelimesi ile Sabit Tanımlama:

const MYCAR = "Volvo";
echo MYCAR;

const ve define() karşılaştırması

  • const her zaman büyük/küçük harfe duyarlıdır

  • define() büyük/küçük harfe duyarlı olmayan bir seçeneğe sahiptir.

  • const Başka bir blok kapsamı içinde (örneğin bir fonksiyon içinde veya bir if bloğunun içinde) oluşturulamaz.

  • define başka bir blok kapsamı içinde oluşturulabilir.

Sihirli Sabitler

PHP'deki sihirli sabitler (magic constants), belirli durumlarda özel değerler döndüren sabitlerdir. Bu sabitler, dosya yolları, sınıf isimleri, fonksiyon isimleri gibi bilgileri döndürmek için kullanılır ve hata ayıklama veya bilgi toplama gibi amaçlar için oldukça yararlıdır.

Sihirli Sabitler ve Açıklamaları

  1. __CLASS__: Bir sınıf içinde kullanıldığında, sınıfın adını döner.

  1. __DIR__: Dosyanın bulunduğu dizini döner.

  1. __FILE__: Dosyanın tam yolunu döner.

  1. __FUNCTION__: Bir fonksiyon içinde kullanıldığında, fonksiyonun adını döner.

  1. __LINE__: Geçerli satır numarasını döner.

  1. __METHOD__: Bir sınıfa ait bir fonksiyon içinde kullanıldığında, hem sınıf hem de fonksiyon adını döner.

  1. __NAMESPACE__: Bir isim alanı içinde kullanıldığında, isim alanının adını döner.

  1. __TRAIT__: Bir trait içinde kullanıldığında, trait adını döner.

  1. ClassName::class: Belirtilen sınıfın adını ve varsa isim alanının adını döner.

[!NOTE]

Sihirli sabitler büyük/küçük harfe duyarlı değildir, yani ile aynı değeri döndürür. __LINE__ = __line__

Last updated

Was this helpful?