PHP OOP-da Statik metodlar we $this

Statik metodlaryň içinde $this elýeterli däl. Bu şu sebäplen ýüze çykýar, statik metodlar obyektiň konteksti daşarynda hem çagyrylyp bilner, ýöne klasyň adyna ýüzlenip.

Adaty metodlarda hem statik, hem-de adaty aýratynlyklar we metodlar elýeterlidir.

Geliň mysallar bilen göreli. Adaty metod boýunça mysal:

Test.php<?php
  class Test
  {
    public static $staticProperty = 'statik';
    public $usualProperty = 'adaty';
    
    public function method()
    {
      echo self::$staticProperty; // 'statik' çykarar
      echo $this->usualProperty;  // 'adaty' çykarar
    }
  }
  
  $test = new Test;
  $test->method();
?>

Statik metod boýunça mysal:

Test.php<?php
  class Test
  {
    public static $staticProperty = 'statik';
    public $usualProperty = 'adaty';
    
    public static function method()
    {
      echo self::$staticProperty; // 'statik' çykarar
      echo $this->usualProperty;  // ýalňyşlyk berer
    }
  }
  
  $test = new Test;
  $test::method();
?>