Mbinu tuli na $this katika OOP kwenye PHP

Ndani ya mbinu tuli haipatikani $this. Hii hutokea kwa sababu mbinu tuli zinaweza kutangulwa nje ya muktadha wa kitu, kwa kurejelea tu jina la darasa.

Katika mbinu za kawaida zinapatikana kama zile tuli, vilevile sifa na mbinu za kawaida.

Tuangalie kwa mifano. Mfano wa mbinu ya kawaida:

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

Mfano wa mbinu tuli:

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