PHPде ООПдо статикалык методдор жана $this

Статикалык методдордун ичинде $this жеткиликтүү эмес. Бул статикалык методдор объекттин контекстинен сырткары, жөн эле класс атына кайрылуу менен чакырылышы мүмкүн болгондуктан болот.

Кадимки методдордо статикалык жана кадимки касиеттер (properties) жана методдор жеткиликтүү.

Келгиле, мисалдар менен карап көрөлү. Кадимки метод үчүн мисал:

Test.php<?php
  class Test
  {
    public static $staticProperty = 'static';
    public $usualProperty = 'usual';
    
    public function method()
    {
      echo self::$staticProperty; // 'static' чыгарат
      echo $this->usualProperty;  // 'usual' чыгарат
    }
  }
  
  $test = new Test;
  $test->method();
?>

Статикалык метод үчүн мисал:

Test.php<?php
  class Test
  {
    public static $staticProperty = 'static';
    public $usualProperty = 'usual';
    
    public static function method()
    {
      echo self::$staticProperty; // 'static' чыгарат
      echo $this->usualProperty;  // ката чыгарат
    }
  }
  
  $test = new Test;
  $test::method();
?>