这是一个例子:
class Test { public function TestMethod() { print_r($this); // Gives me "Test1 Object ( )" } } class Test1 { public function Test1Method() { Test::TestMethod(); } } $test1 = new Test1; $test1->Test1Method();
我觉得这很奇怪.任何人都可以向我解释为什么会发生?
从
http://www.php.net/manual/en/language.oop5.basic.php开始:
原文链接:https://www.f2er.com/php/240320.htmlThe pseudo-variable
$this
is available
when a method is called from within an
object context.$this
is a reference
to the calling object (usually the
object to which the method belongs,
but possibly another object,if the
method is called statically from the
context of a secondary object).
但这并不一定很有意义,如果启用了E_STRICT,它将调用警告.