- 所谓延迟静态绑定,顾名思义,静态调用时::符号左侧的部分的的绑定是延迟,也就是说不再被解析为定义当前方法所在的类,而是在实际运行时计算的。
class A { ???public static function who() { ???????echo __CLASS__.PHP_EOL; ???} ???public static function test() { ???????self::who(); ???} ???public static function test2() { ???????static::who(); ???}}class B extends A { ???public static function who() { ???????echo __CLASS__; ???}}B::test();//AB::test2();//B
PHP中self与static
原文地址:http://blog.51cto.com/phpme/2128213