PHP常量
常量是一個名稱或標識符的一個簡單的值。 常量值在腳本的執行過程中不能改變。 默認情況下,常量是區分大小寫的。按照慣例常量標識符一般是大寫。 常量名稱開頭為字母或下劃線,後麵跟上任意數量的字母,數字或下劃線。如果已經定義了一個常量,它不能改變或者取消定義。
要定義一個常量,必須使用define()函數和獲取常量值,必須簡單地指定其名字。不像變量,不需要有一個恒定的以$開頭的字符串。也可以用函數constant()來讀取常量的值,如果想動態獲取常量的名稱。
constant() 函數:
指出的常量名稱,該函數將返回常量的值。
當想要檢索常量值,這是有用的,但不知道它的名字,存儲在一個變量或函數的返回。
constant() 例子:
<?php define("MINSIZE", 50); echo MINSIZE; echo constant("MINSIZE"); // same thing as the previous line ?>
隻有標量數據(布爾,整數,浮點數和字符串)可以包含在常量。
常量和變量之間的區彆是:
-
冇有必要在一個常量前寫一個美元符號($), 其中變量前麵是必須要寫美元符號($)。
-
常量不能用簡單的賦值語句,它們隻能用define()函數定義。
-
常量可以不用擔心變量範圍的規則定義,任何地方訪問.
-
一旦常量已經確定,不能被重新定義或未定義。
有效和無效的常量名:
// Valid constant names define("ONE", "first thing"); define("TWO2", "second thing"); define("THREE_3", "third thing") // Invalid constant names define("2TWO", "second thing"); define("__THREE__", "third value");
PHP魔術常量:
PHP提供了大量的預定義的常量,以它運行的任何腳本。
有不同的地方就使用5個魔術常數。 例如,__LINE__ 的值取決於它的使用在腳本的行。這些特殊的常量不區分大小寫,詳情如下:
一些“魔術”的PHP常量如下:
名稱 | 描述 |
---|---|
__LINE__ | 該文件的當前行號. |
__FILE__ | 該文件的完整路徑和文件名。如果使用內部的包含,則返回包含文件的名稱。自PHP4.0.2,__FILE__總是包含而在舊版本中,它包含在某些情況下相對路徑絕對路徑。 |
__FUNCTION__ | 該函數名。 (PHP 4.3.0新加)自PHP 5起本常量返回該函數名稱,因為它被聲明(區分大小寫)。在PHP 4中其值總是小寫。 |
__CLASS__ | 類名。(PHP 4.3.0新加)。自PHP5本常量返回類的名字,因為它被聲明(區分大小寫)的。在PHP 4中其值總是小寫。 |
__METHOD__ | 類方法名。 (在PHP5.0.0)方法名返回,因為方法被聲明(區分大小寫)。 |