PHP 中把以兩個下劃線__開頭的方法稱為魔術方法 (Magic methods),這些方法在 PHP 中充當了舉足輕重的作用。 魔術方法包括:
// 類的構造函數(shù)
__construct()
// 類的析構函數(shù)
__destruct()
// 在對象中調用一個不可訪問方法時調用
__call()
// 用靜態(tài)方式中調用一個不可訪問方法時調用
__callStatic()
// 獲得一個類的成員變量時調用
__get()
// 設置一個類的成員變量時調用
__set()
// 當對不可訪問屬性調用isset()或empty()時調用
__isset()
// 當對不可訪問屬性調用unset()時被調用。
__unset()
// 執(zhí)行serialize()時,先會調用這個函數(shù)
__sleep()
// 執(zhí)行unserialize()時,先會調用這個函數(shù)
__wakeup()
// 類被當成字符串時的回應方法
__toString()
// 調用函數(shù)的方式調用一個對象時的回應方法
__invoke()
// 調用var_export()導出類時,此靜態(tài)方法會被調用。
__set_state()
// 當對象復制完成時調用
__clone()
// 嘗試加載未定義的類
__autoload()
// 打印所需調試信息
__debugInfo()