在php中定義常量時,可用到const與define這兩種方法,那他們到底有什麼區別呢?
1.const用於類成員變量的定義,一經定義,不可修改。define不可用於類成員變量的定義,可用於全局常量。
2.const可在類中使用,define不能。
3.const不能在條件語句中定義常量。
如:if(constition){
哲理不能用const,只能用define
}
4.const只能接受靜態的標量,而define可采用任何的表達式。
const BIT_5 = 1 << 5; // invalid
define('BIT_5', 1 << 5); // valid
5.const定義的常量時大小寫敏感的,而define可通過第三個參數(為true表示大小寫不敏感)來指定大小寫是否敏感。
6.const采用一個普通的常量名稱。而define可采用表達式作為常量。
7.使用const使得代碼簡單易讀,const本身就是一個語言結構。而define是一個函數。
8.const在編譯時比define快很多。