PHP 有后期静态绑定的功能,用于在继承范围内引用静态调用的类,即在类的继承过程中,使用的类不再是当前类,而是调用类。后期静态绑定使用关键字static来实现,通过这种机制,“static::”不在解析为定义当前方法所在的类,而是在实际运行时计算得到的,即运行时最初调用的类。虽然称之为“后期静态绑定”,但不仅限制于静态方法的调用
class A{
public static function call(){echo "class A<br/>"; }public static function test(){ self::call(); static::call(); }}
class B extends A
{ public static function call(){echo "class B";}
}
echo (B::test());
//输出结果:
//class A
//class B