Назначение объекта this

  • Автор темы JohnDan
  • Дата начала

JohnDan

Guest
Назначение объекта this

Пожалуйста, объясните глубже назначение, работу объекта this или где об этом можно почитать. В мануале пхп не нашёл этого.
 

zerkms

TDD infected
Команда форума
$this указывает на тот имя обьекта класса который впоследствие будет создан тобой командой new и заранее неизвестен.

PHP:
class Example {
    var $varname;
    function Example ( $a ) {
    $this->a = $a;
    };
};

$class_obj = new Example ( 5 );
echo $class_obj->a;
так вот, в данном примере $this является заранее неизвестным $class_obj.

вроде понятно объяснил.
 

kvn

programmer
ну,
попробую изобразить из себя оратора и обьяснить на палцах:
$this - указывает на себя.
более яркий пример:

PHP:
class A {
  var $v_a;
  function A($a) {
   $this->v_a = $a;
  }
}

class B extends A {
   function B($a) {
    $this->v_a = $a;
  }
}

$o1 = &new A(1); 
$o2 = &new A(5);

$o3 = &new B(10);

print_r($o1);
print_r($o2);
print_r($o3);
$o1 - это один объект класса A,
$o2 - это другой обьект класса A,
но $this->v_a = 1 для $o1, и равно 5 для $o2.

В последнем случае, B наследник A, т.е. наследует все его свойства, в том числе и v_a, но и в данном случае $this->v_a указывает только на объект $o3 и равно 10.

т.е. $this - это ссылка на себя внутри объекта.

Удачи.
 
Сверху