最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

PHP的十六個魔術方法

2022-07-24 13:47 作者:限量版范兒  | 我要投稿

PHP中把以兩個下劃線__開頭的方法稱為魔術方法(Magic methods),這些方法在PHP中充當了舉足輕重的作用。

魔術方法是一種特殊的方法,當對對象執(zhí)行某些操作時會覆蓋 PHP 的默認操作。

注意:

PHP 保留所有以 __ 開頭的方法名稱。 因此,除非覆蓋 PHP 的行為,否則不建議使用此類方法名稱。

下列方法名被認為是魔術方法:

__construct() 、 __destruct() 、 __call() 、 __callStatic() 、 __get() 、 __set() 、 __isset() 、 __unset() 、 __sleep() 、 __wakeup() 、 __serialize() 、 __unserialize() 、 __toString() 、 __invoke() 、 __set_state() 、 __clone() 、 __debugInfo() 。

注意:

除了 __construct(), __destruct() ,和 __clone() 之外的所有魔術方法都 必須 聲明為 public, 否則會發(fā)出 E_WARNING。

在 PHP 8.0.0 之前沒有為魔術方法 __sleep() 、 __wakeup() 、 __serialize() 、 __unserialize() 、 __set_state() 發(fā)出診斷信息。

注意:

如果定義魔術方法時使用類型聲明,它們必須與本文檔中描述的簽名相同,否則會發(fā)出致命錯誤。 在 PHP 8.0.0 之前,不會發(fā)出診斷信息。 然而, __construct() 和 __destruct() 不能聲明返回類型, 否則會發(fā)出致命錯誤。

魔術方法包括:

1. __construct(),類的構造函數(shù)

2. __destruct(),類的析構函數(shù)

3. __call(),在對象中調用一個不可訪問方法時調用

4. __callStatic(),用靜態(tài)方式中調用一個不可訪問方法時調用

5. __get(),獲得一個類的成員變量時調用

6. __set(),設置一個類的成員變量時調用

7. __isset(),當對不可訪問屬性調用isset()或empty()時調用

8. __unset(),當對不可訪問屬性調用unset()時被調用。

9. __sleep(),執(zhí)行serialize()時,先會調用這個函數(shù)

10. __wakeup(),執(zhí)行unserialize()時,先會調用這個函數(shù)

11. __toString(),類被當成字符串時的回應方法

12. __invoke(),調用函數(shù)的方式調用一個對象時的回應方法

13. __set_state(),調用var_export()導出類時,此靜態(tài)方法會被調用。

14. __clone(),當對象復制完成時調用

15. __autoload(),嘗試加載未定義的類

16. __debugInfo(),打印所需調試信息

原文鏈接:https://www.dianjilingqu.com/441165.html

PHP的十六個魔術方法的評論 (共 條)

分享到微博請遵守國家法律
浦北县| 屯昌县| 安康市| 保康县| 金川县| 木里| 渑池县| 久治县| 大荔县| 志丹县| 马尔康县| 呼玛县| 丰都县| 芦山县| 胶州市| 新沂市| 出国| 清水河县| 上高县| 岢岚县| 湟源县| 大关县| 全南县| 阿瓦提县| 嘉兴市| 麻江县| 江孜县| 盐源县| 怀化市| 延寿县| 米泉市| 平江县| 卢龙县| 乐业县| 施甸县| 怀安县| 洛阳市| 西和县| 曲沃县| 南漳县| 砀山县|