婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁(yè) > 知識(shí)庫(kù) > PHP后期靜態(tài)綁定實(shí)例淺析

PHP后期靜態(tài)綁定實(shí)例淺析

熱門標(biāo)簽:海南外呼系統(tǒng)方案 蘇州外呼系統(tǒng)有效果嗎 地圖標(biāo)注怎么做商戶驗(yàn)證 打開百度地圖標(biāo)注 兼職做地圖標(biāo)注好賺錢嗎 400 電話 辦理 亳州企業(yè)外呼系統(tǒng) 山東電銷卡外呼系統(tǒng)原理是什么 智能電銷語(yǔ)音機(jī)器人資訊

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

從php5.3開始,php增加了一個(gè)叫后期綁定的功能,用于在繼承范圍內(nèi)引用靜態(tài)調(diào)用的類

該功能從語(yǔ)言內(nèi)部角度考慮北命名為“后期靜態(tài)綁定”;“后期綁定”意思說(shuō):static::不再被解析為定義當(dāng)前方法所在的類,而是在實(shí)際運(yùn)行時(shí)計(jì)算的,也可以成為“靜態(tài)綁定”;因?yàn)樗梢杂糜冢ǖ幌抻陟o態(tài)方法的調(diào)用)。

self::的限制

使用self::或者_class_對(duì)當(dāng)前類的靜態(tài)引用,取決于定義當(dāng)前方法所在的類

例子:

class A {
  public static function who() {
    echo __CLASS__;
  }
  public static function test() {
    self::who();
  }
}
class B extends A {
  public static function who() {
    echo __CLASS__;
  }
}
B::test(); //A

打印結(jié)果:

A

后期靜態(tài)綁定的用法

后期靜態(tài)綁定試圖通過(guò)引入一個(gè)關(guān)鍵字表示運(yùn)行時(shí)最初調(diào)用的類來(lái)繞過(guò)限制。簡(jiǎn)單的說(shuō),這個(gè)關(guān)鍵字能夠讓你在上述中調(diào)用test()時(shí)引用的類是B而不是A。最終決定不引用新的關(guān)鍵字,而是使用已經(jīng)預(yù)留static關(guān)鍵字

例子:

?php
class A {
  public static function who() {
    echo __CLASS__;
  }
  public static function test() {
    static::who(); // 后期靜態(tài)綁定從這里開始
  }
}
class B extends A {
  public static function who() {
    echo __CLASS__;
  }
}
B::test();
?>

打印結(jié)果是:

B

后期靜態(tài)綁定的處理方式解決了以往完全沒(méi)有解決的靜態(tài)調(diào)用,另外一方面,如果靜態(tài)調(diào)用使用parent::或者self::將轉(zhuǎn)發(fā)調(diào)用信息

?php
class A {
  public static function foo() {
    static::who();
  }
  public static function who() {
    echo __CLASS__."\n";
  }
}
class B extends A {
  public static function test() {
    A::foo();
    parent::foo();
    self::foo();
  }
  public static function who() {
    echo __CLASS__."\n";
  }
}
class C extends B {
  public static function who() {
    echo __CLASS__."\n";
  }
}
C::test();
?>

打印結(jié)果:

A
C
C

例子:

?php
class a {
 static public function test() {
  print get_called_class();
 }
}
class b extends a {
}
a::test();
b::test();
?>

打印結(jié)果:

a
b

特別聲明:

get_called_class();獲得類的名稱靜態(tài)方法中調(diào)用

更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《php面向?qū)ο蟪绦蛟O(shè)計(jì)入門教程》、《PHP數(shù)組(Array)操作技巧大全》、《PHP基本語(yǔ)法入門教程》、《PHP運(yùn)算與運(yùn)算符用法總結(jié)》、《php字符串(string)用法總結(jié)》、《php+mysql數(shù)據(jù)庫(kù)操作入門教程》及《php常見數(shù)據(jù)庫(kù)操作技巧匯總》

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

您可能感興趣的文章:
  • PHP后期靜態(tài)綁定之self::限制實(shí)例分析
  • PHP類與對(duì)象后期靜態(tài)綁定操作實(shí)例詳解
  • 詳解PHP后期靜態(tài)綁定分析與應(yīng)用
  • PHP面向?qū)ο笾笃陟o態(tài)綁定功能介紹
  • PHP Static延遲靜態(tài)綁定用法分析
  • PHP延遲靜態(tài)綁定示例分享
  • 簡(jiǎn)單談?wù)刾hp延遲靜態(tài)綁定
  • php5.3后靜態(tài)綁定用法詳解
  • php延遲靜態(tài)綁定實(shí)例分析
  • PHP延遲靜態(tài)綁定的深入講解

標(biāo)簽:呼倫貝爾 金華 紹興 萊蕪 安康 綏化 清遠(yuǎn) 溫州

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《PHP后期靜態(tài)綁定實(shí)例淺析》,本文關(guān)鍵詞  PHP,后期,靜態(tài),綁定,實(shí)例,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《PHP后期靜態(tài)綁定實(shí)例淺析》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于PHP后期靜態(tài)綁定實(shí)例淺析的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    主站蜘蛛池模板: 东台市| 琼中| 安吉县| 黄龙县| 分宜县| 无极县| 南宫市| 资中县| 堆龙德庆县| 肇源县| 友谊县| 灵丘县| 沧州市| 泸水县| 色达县| 铜鼓县| 启东市| 三台县| 牟定县| 阿克陶县| 黄平县| 大港区| 伊春市| 长白| 大冶市| 肃北| 商丘市| 防城港市| 仁布县| 宁化县| 常州市| 临城县| 湟源县| 宣威市| 霍城县| 淅川县| 将乐县| 双峰县| 灵石县| 洪泽县| 商都县|