php中const和define的差別有:const是語言結構,define是函數;const可以在類別中使用,define不可以;const不能在條件分支中使用,define可以。
本文操作環境:windows10系統、php 7、thinkpad t480電腦。
我們知道在PHP中一共有兩種定義常數的方式,分別是const和define。那麼很多初學者在使用const和define的過程中可能會產生一個疑問,它們兩個在使用上有什麼區別呢?
下面我們一起來看看兩者的差異:
const是一種語言結構,而define是一個函數。
const可以在類別中使用,而define不可以。在PHP5.3以前,const只能在類別中使用,而PHP5.3開始在類別外也可以使用。
const不能在條件分支中使用,而define可以。
const只能用普通的常數名稱,define可以使用表達式。
const在PHP5.6之前只接受靜態的標量,從PHP5.6開始可以使用表達式,define可以使用表達式。
const定義的常數是大小寫敏感的,而define可以透過第三個參數來指定是否大小寫敏感(true不敏感;false敏感,預設為false)。
const定義常數時考慮命名空間,而define不會。簡單來說就是const可以在不同的命名空間下定義同名的常數,而define則不行。
常數可以透過常數名直接訪問,也可以透過constant()函數訪問,透過get_defined_constants()可以獲得所有已定義的常數。
推薦學習:php培訓
以上是php中const和define有什麼差別的詳細內容。更多資訊請關注PHP中文網其他相關文章!