先来看一段错误的代码
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 自然不知道要调用哪个对象的方法