先来看一段错误的代码
class Test { function __construct() { ;//空构造函数 } public function testFun() { testChildFun(); } private function testChildFun() { echo "Test Success!"; } } $myTest = new Test(); $myTest ->testFun();
之后会报 PHP Fatal error: Call to undefined function testChildFun() in ...错误,看代码里 testChildFun 确实存在,为什么找不到呢?原因就在于 testFun()调用testChildFun的方式错了,正确调用应该如下:
$this->testChildFun();
不指明 $this 对象的话 PHP 自然不知道要调用哪个对象的方法