亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

PHP Static延遲靜態(tài)綁定用法分析

 更新時(shí)間:2016年03月16日 11:24:31   作者:allen0228  
這篇文章主要介紹了PHP Static延遲靜態(tài)綁定用法,結(jié)合實(shí)例形式較為詳細(xì)的分析了Static延遲靜態(tài)綁定的功能,定義及使用技巧,需要的朋友可以參考下

本文實(shí)例講述了PHP Static延遲靜態(tài)綁定用法。分享給大家供大家參考,具體如下:

PHP5.3以后引入了延遲靜態(tài)綁定static,它是為了解決什么問(wèn)題呢?php的繼承模型中有一個(gè)存在已久的問(wèn)題,那就是在父類(lèi)中引用擴(kuò)展類(lèi)的最終狀態(tài)比較困難。來(lái)看一個(gè)例子。

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中加入了一個(gè)新特性:延遲靜態(tài)綁定,就是把本來(lái)在定義階段固定下來(lái)的表達(dá)式或變量,改在執(zhí)行階段才決定,比如當(dāng)一個(gè)子類(lèi)繼承了父類(lèi)的靜態(tài)表達(dá)式的時(shí)候,它的值并不能被改變,有時(shí)不希望看到這種情況。

下面的例子解決了上面提出的問(wèn)題:

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();定義了一個(gè)靜態(tài)延遲綁定方法,直到B調(diào)用test的時(shí)候才執(zhí)行原本定義的時(shí)候執(zhí)行的方法。

更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專(zhuān)題:《php操作office文檔技巧總結(jié)(包括word,excel,access,ppt)》、《php日期與時(shí)間用法總結(jié)》、《php面向?qū)ο蟪绦蛟O(shè)計(jì)入門(mén)教程》、《php字符串(string)用法總結(jié)》、《php+mysql數(shù)據(jù)庫(kù)操作入門(mén)教程》及《php常見(jiàn)數(shù)據(jù)庫(kù)操作技巧匯總

希望本文所述對(duì)大家PHP程序設(shè)計(jì)有所幫助。

相關(guān)文章

最新評(píng)論