php static::和self::的区别
作者:binstatic:访问当前类的static方法
class A {
public static function who() {
echo A::class . "\n";
}
public static function test() {
<span style="color: #ff0000;">static::who();</span>
}
}
class B extends A {
public static function who() {
echo B::class . "\n";
}
}
A::test();//A
B::test();//B
self: 是类内指针,不管是否继承,都访问的是本类的static方法,属性
class A {
public static function who() {
echo A::class . "\n";
}
public static function test() {
<span style="color: #ff0000;">self::who();</span>
}
}
class B extends A {
public static function who() {
echo B::class . "\n";
}
}
A::test();//A
B::test();//A