首页  >  文章  >  后端开发  >  PHP后期静态绑定实例分享

PHP后期静态绑定实例分享

小云云
小云云原创
2018-03-13 11:47:371153浏览

1.后期静态绑定工作原理是存储了在上一个“非转发调用”(non-forwarding call)的类名。当进行静态方法调用时,该类名即为明确指定的那个(通常在 :: 运算符左侧部分);当进行非静态方法调用时,即为该对象所属的类。该功能从语言内部角度考虑被命名为“后期静态绑定”。“后期绑定”的意思是说,static:: 不再被解析为定义当前方法所在的类,而是在实际运行时计算的。

2.测试示例:

class A{    public function run()    
{        static::test(); //后期静态绑定        
self::test(); //不是后期静态绑定    }    
public static function test()    
{        echo &#39;A Class<br>&#39;;    
}}class B extends A
{    public static function test()   
{        echo &#39;B Class<br>&#39;;    }}
$a = new B();$a->run();
//输出结果
//B Class
//A Class

相关推荐:

Laravel中一个后期静态绑定详细说明

PHP面向对象之后期静态绑定功能介绍

php后期静态绑定

以上是PHP后期静态绑定实例分享的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn