php中const和define有什麼區別

coyan發表於2021-09-11

php中const和define的區別有:const是語言結構,define是函式;const可以在類中使用,define不可以;const不能在條件分支中使用,define可以。

php中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中const和define有什麼區別的詳細內容,更多請關注php中文網其它相關文章!

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/2236/viewspace-2827172/,如需轉載,請註明出處,否則將追究法律責任。

相關文章