国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > PHP > 正文

PHP Static延遲靜態綁定用法分析

2024-05-04 23:44:02
字體:
來源:轉載
供稿:網友
這篇文章主要介紹了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的時候才執行原本定義的時候執行的方法。



發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 连城县| 邵东县| 普兰县| 黑山县| 平陆县| 丰宁| 盱眙县| 新源县| 延吉市| 兴国县| 乐清市| 额尔古纳市| 海丰县| 美姑县| 洛隆县| 武邑县| 腾冲县| 金华市| 手机| 香港 | 克东县| 保德县| 西林县| 商城县| 灯塔市| 射阳县| 当阳市| 工布江达县| 嵊州市| 桦南县| 福安市| 鸡东县| 格尔木市| 方山县| 河东区| 峨眉山市| 封开县| 崇信县| 光泽县| 泗水县| 革吉县|