中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么在PHP中使用self::限制實現后期靜態綁定

發布時間:2021-06-06 11:09:12 來源:億速云 閱讀:92 作者:Leah 欄目:開發技術

本篇文章給大家分享的是有關怎么在PHP中使用self::限制實現后期靜態綁定,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。

官方文檔上是這樣定義的:

“后期綁定”的意思是說,static:: 不再被解析為定義當前方法所在的類,而是在實際運行時計算的。也可以稱之為”靜態綁定”,因為它可以用于(但不限于)靜態方法的調用。

在此我想用官方文檔上的一個例子來說明self::限制:

self::實例

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=new B();
$B->test();`

輸出結果為:

A

static實例:

class A{
  public static function who(){
    echo __class__;
  }
  public static function test(){
    static::who();
  }
}
class B extends A{
  public static function who(){
    echo __class__;
  }
}
$B=new B();
$B->test();

輸出結果為:

B

注意,注意啦!這里用的是:static::,以前很少在PHP中見過這種寫法吧?看到static::,不禁想起來:self:: parent::

在此我想把self:: static:: parent::進行一個比較:

  • self:: 通常指向類本身,也就是self是不指向任何已經實例化的對象,一般self使用來指向類中的靜態變量(不可以指向非靜態變量),但是可以訪問類中其他靜態方法與非靜態方法。它是當前類的指針。

  • parent:: 是指向父類的指針,一般我們使用parent來調用父類的構造函數。但也可以訪問父類的其他方法(不可以訪問其他靜態與非靜態變量)。

  • static:: 通常用于后期靜態綁定中。

以上就是怎么在PHP中使用self::限制實現后期靜態綁定,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

php
AI

南雄市| 沅陵县| 孟村| 左权县| 苗栗县| 宣威市| 铜川市| 绩溪县| 出国| 邹城市| 南皮县| 临澧县| 固阳县| 岳阳县| 田阳县| 甘泉县| 随州市| 剑川县| 昌邑市| 木兰县| 大安市| 商水县| 淅川县| 南木林县| 义乌市| 苏尼特右旗| 永昌县| 崇仁县| 连城县| 区。| 宝丰县| 吴江市| 治多县| 涟源市| 潜山县| 民丰县| 东乡县| 阿克苏市| 金寨县| 汶川县| 大同县|