PHP后期靜態(tài)綁定之self::限制實(shí)例分析
本文實(shí)例講述了PHP后期靜態(tài)綁定之self::限制。分享給大家供大家參考,具體如下:
在此我想講一講后期靜態(tài)綁,我想講self::
與static
進(jìn)行比較說明。
官方文檔上是這樣定義的:
“后期綁定”的意思是說,static:: 不再被解析為定義當(dāng)前方法所在的類,而是在實(shí)際運(yùn)行時(shí)計(jì)算的。也可以稱之為”靜態(tài)綁定”,因?yàn)樗梢杂糜冢ǖ幌抻冢╈o態(tài)方法的調(diào)用。
在此我想用官方文檔上的一個(gè)例子來說明self::限制:
self::實(shí)例
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();`
輸出結(jié)果為:
A
static實(shí)例:
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();
輸出結(jié)果為:
B
注意,注意啦!這里用的是:static::
,以前很少在PHP中見過這種寫法吧?看到static::
,不禁想起來:self::
parent::
在此我想把self::
static::
parent::
進(jìn)行一個(gè)比較:
self::
通常指向類本身,也就是self是不指向任何已經(jīng)實(shí)例化的對(duì)象,一般self使用來指向類中的靜態(tài)變量(不可以指向非靜態(tài)變量),但是可以訪問類中其他靜態(tài)方法與非靜態(tài)方法。它是當(dāng)前類的指針。parent::
是指向父類的指針,一般我們使用parent來調(diào)用父類的構(gòu)造函數(shù)。但也可以訪問父類的其他方法(不可以訪問其他靜態(tài)與非靜態(tài)變量)。static::
通常用于后期靜態(tài)綁定中。
更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《php面向?qū)ο蟪绦蛟O(shè)計(jì)入門教程》、《PHP數(shù)組(Array)操作技巧大全》、《PHP基本語法入門教程》、《PHP運(yùn)算與運(yùn)算符用法總結(jié)》、《php字符串(string)用法總結(jié)》、《php+mysql數(shù)據(jù)庫操作入門教程》及《php常見數(shù)據(jù)庫操作技巧匯總》
希望本文所述對(duì)大家PHP程序設(shè)計(jì)有所幫助。
相關(guān)文章
PHP基于Closure類創(chuàng)建匿名函數(shù)的方法詳解
這篇文章主要介紹了PHP基于Closure類創(chuàng)建匿名函數(shù)的方法,結(jié)合實(shí)例形式詳細(xì)分析了Closure 類的功能、常用函數(shù)使用技巧及相關(guān)注意事項(xiàng),需要的朋友可以參考下2017-08-08數(shù)據(jù)庫中排序的對(duì)比及使用條件詳解
PHP與MySQL數(shù)據(jù)庫中排序的對(duì)比及使用條件是本文我們主要要介紹的內(nèi)容,通常來說,執(zhí)行效率需要考慮CPU、內(nèi)存和硬盤等的負(fù)載情況2012-02-02PHP實(shí)現(xiàn)多維數(shù)組多字段自定義排序
這篇文章主要介紹了PHP實(shí)現(xiàn)多維數(shù)組多字段自定義排序,通過將待排序數(shù)組的各個(gè)數(shù)組的$field保存在一維數(shù)組fieldArr中,在傳入array_multisort中參與排序,相當(dāng)于對(duì)$field一維數(shù)組的排序,而后根據(jù)排序后的key重新構(gòu)建傳入的待排序數(shù)組,需要的朋友可以參考下2023-10-10在WINDOWS中設(shè)置計(jì)劃任務(wù)執(zhí)行PHP文件的方法
在網(wǎng)上找了些WINDOWS執(zhí)行PHP的計(jì)劃任務(wù)的方法,有一個(gè)寫得很全,可惜在我這竟然沒通過。最后不得不綜合各門派的方法,才能在我這運(yùn)行成功2011-12-12php提交post數(shù)組參數(shù)實(shí)例分析
這篇文章主要介紹了php提交post數(shù)組參數(shù)的用法,結(jié)合實(shí)例分析了php使用post進(jìn)行參數(shù)提交的相關(guān)技巧,需要的朋友可以參考下2015-12-12PHP基于openssl實(shí)現(xiàn)非對(duì)稱加密代碼實(shí)例
這篇文章主要介紹了PHP基于openssl實(shí)現(xiàn)非對(duì)稱加密代碼實(shí)例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-06-06PHP項(xiàng)目多語言配置平臺(tái)實(shí)現(xiàn)過程解析
這篇文章主要介紹了PHP項(xiàng)目多語言配置平臺(tái)實(shí)現(xiàn)過程解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-05-05