一般说法:¥this表示当前所在类对象这个很不明确
$this取决于¥this所在方法被调用时的执行对象(环境)
方法执行环境:当前方法在哪个对象环境下执行,该方法的¥this就表示该对象,针对还原一层层到最初始的方法的对象
举例
class A{
private function m(){
echo 'aa';
}
public function run(){
var_dump($this);
}
}
$ai = new A();
$ai->run();
echo "
=======
";
class B{
public function m(){
var_dump($this);
echo '
';
A::run();
}
}
$li = new B();
$li->m();
?>
立即学习“PHP免费学习笔记(深入)”;
但是如果是继承过来的另算,此run方法来自继承,所以this是a类的
class a{
private function m(){
echo 'aa';
}
public function run(){
$this->m();
}
}
class b extends a{
public function m(){
echo 'bb';
}
}
$li = new b();
$li->run();
?>
以上就介绍了php $this到底是什么,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号