• Bu site çerezler kullanır. Bu siteyi kullanmaya devam ederek çerez kullanımımızı kabul etmiş olursunuz. Daha fazla bilgi edin.

Sınıf Sabitleri

Konuyu Okuyan Kişiler (0)

delete38

webmaster.tc
Katılım
7 Ara 2012
Mesajlar
27
Beğeniler
0
#1
Sabitlerin her sınıf için ayrı ayrı tanımlanabilmesi mümkündür. Sabitler diğer değişkenlerden tanımlanmaları ve kullanılmaları sırasında başlarına getirilmeyen $ imi sayesinde ayrılırlar.

Değer, örneğin, bir değişken, bir sınıf özelliği, bir matematiksel işlemin sonucu veya bir işlev çağrısı değil, bir sabit ifade olmalıdır.

Ayrıca, sınıf arayüzlerinin de kendi sabitlerinin olması mümkündür. Örnekler için Nesne Arayüzleri belgesine bakınız.

PHP 5.3.0'dan itibaren, bir sınıfa bir değişken kullanarak atıfta bulunmak mümkündür. Değişkenin değeri, self, parent, static gibi bir anahtar sözcük olamaz.

Örnek 1 - Bir sabitin tanımlanması ve kullanımı
PHP:
<?php
class MyClass
{
    const constant = 'sabit değer';

    function showConstant() {
        echo  self::constant . "\n";
    }
}

echo MyClass::constant . "\n";

$classname = "MyClass";
echo $classname::constant . "\n"; // PHP 5.3.0'dan itibaren

$class = new MyClass();
$class->showConstant();

echo $class::constant."\n"; // PHP 5.3.0'dan itibaren
?>

Örnek 2 - Duruk veri örneği
<?php
class foo {
    // PHP 5.3.0'dan itibaren
    const bar = <<<'EOT'
bar
EOT;
}
?>
Duruk veri bağlamında yorumlanan çok satırlı metinler değil (heredoc), yorumlanmayan çok satırlı metinler (nowdoc) kullanılabilir.