常量在腳本執行期間其值不能改變。常量大小寫敏感,傳統上常量標識符總是大寫。常量一旦定義就不能被重新定義或取消定義,常量的值只能是標量。
可以用define()函數來定義常量,也可以使用const關鍵字在類定義之外定義常量。自定義常量不要以雙下劃線開頭,可能會與魔術常量沖突。
define('FOO', 'something');const FOO = 'something';使用const關鍵字定義常量必須處于最頂端的作用區域,因為用此方法是在編譯時定義的。常量的范圍是全局的,不用管作用區域,就可以在腳本的任何地方訪問常量。
魔術常量魔術常量值能變,但它其實不是常量。
PHP向它運行的任何腳本提供了大量的預定義常量,有8個魔術常量的值隨著它們在代碼中的位置改變而改變。
__LINE__ // 文件中的當前行號__FILE__ // 文件的完整路徑和文件名,絕對路徑__DIR__ // 文件所在的目錄,除非根目錄,否則不包括末尾斜杠,等價于dirname(__FILE__)__FUNCTION__ // 函數名稱,區分大小寫__CLASS__ // 類的名稱,包括其被聲明的作用區域__TRAIT__ // Trait的名字,包括其被聲明的作用區域__METHOD__ // 類的方法名__NAMESPACE__ // 當前命名空間的名稱這幾個魔術常量也不知什么作用,就先放在這里吧。
(全文完)
新聞熱點
疑難解答