標籤:
一、魔術常量
__LINE__ 檔案中的當前行號。
__FILE__ 檔案的完整路徑和檔案名稱。如果用在被包含檔案中,則返回被包含的檔案名稱。
自 PHP 4.0.2 起,__FILE__ 總是包含一個絕對路徑(如果是符號串連,則是解析後的絕對路徑),
而在此之前的版本有時會包含一個相對路徑。
__DIR__ 檔案所在的目錄。如果用在被包括檔案中,則返回被包括的檔案所在的目錄。
它等價於 dirname(__FILE__)。除非是根目錄,否則目錄中名不包括末尾的斜杠。
__FUNCTION__ 函數名稱(PHP 4.3.0 新加)。自 PHP 5 起本常量返回該函數被定義時的名字(區分大小寫)。
在 PHP 4 中該值總是小寫字母的。
__CLASS__ 類的名稱(PHP 4.3.0 新加)。自 PHP 5 起本常量返回該類被定義時的名字(區分大小寫)。
在 PHP 4 中該值總是小寫字母的。類名包括其被聲明的作用地區(例如 Foo\Bar)。
注意自 PHP 5.4 起 __CLASS__ 對 trait 也起作用。
當用在 trait 方法中時,__CLASS__ 是調用 trait 方法的類的名字。
__TRAIT__ Trait 的名字(PHP 5.4.0 新加)。自 PHP 5.4 起此常量返回 trait 被定義時的名字(區分大小寫)。
Trait 名包括其被聲明的作用地區(例如 Foo\Bar)。
__METHOD__ 類的方法名(PHP 5.0.0 新加)。返回該方法被定義時的名字(區分大小寫)。
__NAMESPACE__ 當前命名空間的名稱(區分大小寫)。此常量是在編譯時間定義的(PHP 5.3.0 新增)。
二、魔術方法
__get()
在類外訪問私人化成員屬性時,__get會被自動觸發。
__get()必須給一個參數。參數就是訪問的私人化成員屬性。
__set()
在類外設定私人化成員屬性時,__set()會被自動觸發。
__set()必須給兩個參數。參數就是設定的私人化成員屬性名稱。設定的值。
__clone()
在應用關鍵詞clone時,魔術方法__clone會被自動觸發。
作用:給成員屬性賦初值。
__call()
當訪問類中一個不存在的成員方法時,會被自動調用。
魔術方法__call有兩個必須的參數。第一個參數是請求的不存在的方法名稱,格式是字串。第二個參數是請求不存在方法時給的參數。格式是數組。
作用:可以將多個功能相似的成員方法都寫入到魔術方法__call裡面。
__autoload()
功能自動載入。在執行個體化類對象時,會被自動觸發。
有一個必須的參數。參數執行個體化時的類名稱。
__toString()
- 不需要參數
- 當企圖以字串形式輸出類對象時
- 要求必須return 一個內容
- 返回toString 魔術方法中return 的字串。
- 介紹類
PHP魔術方法和魔法變數詳解