Php

Static Deyimi

Sınıflarda olduğu gibi “static” deyimi Trait yapılarında da kullanılır. Daha öncede belirttiğimiz gibi “static” deyimi ifade edilen özellikler ve davranışlar RAM bellekte tutulur. “Static” olarak ifade edilmiş üyeler RAM bellekte tutulduğundan dolayı son durumları korunur.

<?php
  trait Sayac {
    public function artir(){
      static $c = 0;
      $c = $c + 1;
      echo $c . '<br>';
     }
   }
  class ortakSinif {
   use Sayac;
  }
  $o = new ornekSinif ();
  $o->artir ();  $Sonuç:1
  $o->artir ();  $Sonuç:2
  $o->artir ();  $Sonuç:3
?>

Yukardaki örnekte “Sayac” isimli Trait içinde “artir()” isminde bir davranış oluşturdu. Bu davranış içerisinde ise “static” deyimi ile bir değişken tanımlandı ve her çağırdığında değeri bir artırılarak ekrana yazdırıldı.
Şimdi bu Trait ile bir sınıfı genişlettiğimizde ve sınıftan örnek alıp “artir()” davranışını her çağırdığımızda “static” deyimi ile tanımlanan değişkenin değeri  bir artırılıp ekrana yazdırılacaktır. Dikkat ederseniz, değişken ilk durumda 0 (sıfır) değerini alıyor. Daha sonra ise RAM bellekte tanımlı olduğundan tekrardan değerini sıfırlamadan son değeri ile işlem yapacaktır. Bu durumda kaç defa çağırılırsa  ekrana 1,2,3… gibi “n” adet sayı yazacaktır.

Okan ACAR

Ben Okan ACAR, 1993 Uşak Doğumluyum. 2012 Yılında Front End ile Tanıştım. Bunun Yanı Sıra Birçok Proje ve Şirketlerde Çalıştım. Tasarım Sürecim Çok Zengin ve Görseldir. Benim için Tasarım Bir Tutkudur. Sadece Bir İş Değil!

İlgili Makaleler

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Göz Atın
Kapalı
Başa dön tuşu