关于静态访问符 :: 的调用问题
:: 为什么可以调用可以调用非静态方法,$this可以调用静态方法
class B extends A{
public function printOut() {
echo ('printOut');
}
public static function printOut2(){
echo('printOut2');
}
public function test(){
self::printOut();
$this->printOut2();
}
}
$b = new B();
$b->test();
//正常输出
//printOutprintOut2
就是支持这种写法啊.
诶,我去,没看出来还可以这样,也太灵活了吧,一般不是下面这种写法吗
这样调用会有警告的
低版本的php,也经常会有这样的情况,但是应该会有warning的提示
php8🙅🏻♀️🚫
在动态的方法里面本来就可以用self调用当前类的静态方法,反过来在静态方法里面就不能用 $this调用当前类的方法
PHP手册有说明
