全域性常量 PHP常量的定義和用法

2021-10-16 03:49:54 字數 867 閱讀 1996

我們通常把不經常變的值定義成常量,常量一般用全部大寫來表示,前面不加美元符號,也可減少團隊開發的出錯。那麼define和const有什麼區別呢?

1、const是乙個語言結構;而define是乙個函式,可以通過第三個引數來指定是否區分大小寫。true表示大小寫不敏感,預設為false

define('pi', 3.14, true);
2、const簡單易讀,編譯時要比define快很多。

3、const可在類中使用,用於類成員常量定義,定義後不可修改;define不能在類中使用,可用於全域性變數

class myclass

}

4、const是在編譯時定義,因此必須處於最頂端的作用區域,不能在函式,迴圈及if條件中使用;而define是函式,也就是能呼叫函式的地方都可以使用

if (...)

if (...)

5、const只能用普通的常量名,define常量名中可以有表示式

const  foo = 'bar';

for ($i = 0; $i < 32; ++$i)

6、const定義的常量只能是靜態常量,define可以是任意表示式

const bit_5 = 1 << 5;    // valid since php 5.6

define('bit_5', 1 << 5); // 有效的valid

或 者關注我每天分享技術文章

高階php架構師​www.zhihu.com

定義全域性常量

這樣定義 private final static int over all 如果只有final,這個值雖然不能改,但是如果over all所在的類有很多個物件,那麼over all這個物件將存放很多次,會很浪費空間。所以需要加加上static,這樣的話就算有很多物件那也會只有乙個over all。...

PHP 常量定義以及用法

define define是函式,不能在物件中定義,但可在類中定義使用 define cl 10 static靜態常量 是乙個變數,可以常量的語法訪問,就是 可以沒有例項化也能訪問 public static a 呵呵 const const是乙個語言結構,編譯時要比define快,是為全域性常量,...

php定義常量

宣告常量和宣告變數的方式不同,在php中是通過使用define 函式和const來定義常量的。常量的命名與變數相似,也要遵循php識別符號的命名規則。常量預設為大小寫敏感,按照慣例常量識別符號總是大寫的,但是不要再常量前面加上 符號。define 函式的格式如下 boolean define str...