在php中如果我們要定義常量有很多方法,但在類中我們要定義常量多半會用到const常量修飾符來定義了,下面小編來給各位同學介紹一下操作辦法。
在PHP中定義常量是通過define()函數來完成的,但在類中定義常量不能使用define(),而需要使用const修飾符,類中的常量使用const定義后,其訪問方式和靜態成員類似,都是通過類名或在成員方法中使用self訪問,但在PHP 5.3.0之后也可以使用對象來訪問,被const定義的常量不能重新賦值,如果在程序中試圖改變它的值將會出現錯誤,實例代碼如下:
關注細節:使用const定義的常量名稱前不需要使用“$“符號,且常量名稱通常都是大寫的。
試圖為const定義的常量賦值,將會出現錯誤,代碼如下:
程序運行結果將會出錯,使用const修飾的常量更其它的常量,有點不同的地方就是:常量名前不要使用”$”,切記!當然這個常量值也是不能修改的,一旦定義就不能程序的任何地方進行“人為”的修改,這跟使用 define定義是一樣,還有就是使用const來定義當然也遵守其它常量的命名規則.
擴展閱讀:
常量前面沒有美元符號($);
常量只能用 define() 函數定義,而不能通過賦值語句;
常量可以不用理會變量范圍的規則而在任何地方定義和訪問;
常量一旦定義就不能被重新定義或者取消定義;
常量的值只能是標量;
常量只能包含標量數據(boolean,integer,float 和 string),不要定義 resource常量.
可以用函數 constant() 來讀取常量的值.get_defined_constants()可以獲得所有已定義的常量列表.
如果使用了一個未定義的常量,PHP 假定想要的是該常量本身的名字,如同用字符串調用它一樣(CONSTANT 對應 “CONSTANT”),此時將發出一個 E_NOTICE 級的錯誤.
PHP 的“魔術常量”.
名稱 | 說明 |
__LINE__ | 文件中的當前行號。 |
__FILE__ | 文件的完整路徑和文件名。如果用在包含文件中,則返回包含文件名。自 PHP 4.0.2 起,__FILE__ 總是包含一個絕對路徑,而在此之前的版本有時會包含一個相對路徑。 |
__FUNCTION__ | 函數名稱(PHP 4.3.0 新加)。自 PHP 5 起本常量返回該函數被定義時的名字(區分大小寫)。在 PHP 4 中該值總是小寫字母的。 |
__CLASS__ | 類的名稱(PHP 4.3.0 新加)。自 PHP 5 起本常量返回該類被定義時的名字(區分大小寫)。在 PHP 4 中該值總是小寫字母的。 |
__METHOD__ | 類的方法名(PHP 5.0.0 新加)。返回該方法被定義時的名字(區分大小寫)。 |