PHP Static延迟静态绑定用法分析
发布:smiling 来源: PHP粉丝网 添加日期:2021-07-14 21:31:23 浏览: 评论:0
这篇文章主要介绍了PHP Static延迟静态绑定用法,结合实例形式较为详细的分析了Static延迟静态绑定的功能,定义及使用技巧,需要的朋友可以参考下。
本文实例讲述了PHP Static延迟静态绑定用法,分享给大家供大家参考,具体如下:
PHP5.3以后引入了延迟静态绑定static,它是为了解决什么问题呢?php的继承模型中有一个存在已久的问题,那就是在父类中引用扩展类的最终状态比较困难。来看一个例子。
- class A
 - {
 - public static function echoClass(){
 - echo __CLASS__;
 - }
 - public static function test(){
 - self::echoClass();
 - }
 - }
 - class B extends A
 - {
 - public static function echoClass()
 - {
 - echo __CLASS__;
 - }
 - }
 
B::test(); //输出A
在PHP5.3中加入了一个新特性:延迟静态绑定,就是把本来在定义阶段固定下来的表达式或变量,改在执行阶段才决定,比如当一个子类继承了父类的静态表达式的时候,它的值并不能被改变,有时不希望看到这种情况。
下面的例子解决了上面提出的问题:
- class A
 - {
 - public static function echoClass(){
 - echo __CLASS__;
 - }
 - public static function test()
 - {
 - static::echoClass();
 - }
 - }
 - class B extends A
 - {
 - public static function echoClass(){
 - echo __CLASS__;
 - }
 - }
 - B::test(); //输出B
 
第8行的static::echoClass();定义了一个静态延迟绑定方法,直到B调用test的时候才执行原本定义的时候执行的方法。
Tags: Static PHP延迟静态绑定
相关文章
- ·PHP static 静态变量和属性方法使用说明(2014-07-15)
 - ·php中static静态类与static 静态变量用法区别(2014-08-29)
 - ·php静态变量define,static,const(2014-09-18)
 - ·PHP Static延迟静态绑定用法分析(2019-11-17)
 - ·PHP static局部静态变量和全局静态变量总结(2020-09-27)
 - ·php类中的$this,static,final,const,self这几个关键字使用方法(2021-06-29)
 - ·详解php用static方法的原因(2021-10-29)
 - ·PHP中Static(静态)关键字功能与用法实例分析(2021-11-15)
 - ·PHP延迟静态绑定的深入讲解(2021-09-06)
 
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
 - PHP新手上路(一)(7)
 - 惹恼程序员的十件事(5)
 - PHP邮件发送例子,已测试成功(5)
 - 致初学者:PHP比ASP优秀的七个理由(4)
 - PHP会被淘汰吗?(4)
 - PHP新手上路(四)(4)
 - 如何去学习PHP?(2)
 - 简单入门级php分页代码(2)
 - php中邮箱email 电话等格式的验证(2)
 
