php 中的 define 與 const 的比較

2021-06-21 16:12:55 字數 630 閱讀 8434

都是定義常量 下面的**解釋下兩者的區別 

只能使用在類成員

指令碼全域性都能使用

區分大小寫

賦值型別

解釋constyn

y靜態標量

結構語句 編譯快

defineny

n可計算的變數

函式語句 能在條件語句使用

const 的定義及使用方法

class foo

echo foo::test;

echo constant('foo::test');

const 作為結構語句只能使用在 class 中,並且賦值必須是靜態標量(類是c中的 #define const value ;  這裡的value),還不能用在條件、迴圈語句中,優點就是編譯速度快

被const修飾的類成員屬性可以當作靜態屬性呼叫 (foo::test) 

define作為乙個系統函式有更靈活的使用

總體來看 define跟你更靈活 而 const 更底層

const 的實現 就是define 的底層實現 ,define的下一層實現應該跟const 一樣

為了速度可以多使用const (只能在class中)

const和define的區別以及const的優點

1 就起作用的階段而言 define是在編譯的預處理階段起作用 在預處理階段進行替換 而const是在編譯執行的時候起作用 const修飾的唯讀變數是在編譯的時候確定其值 2 就起作用的方式而言 define只是簡單的字串替換,沒有型別檢查。而const有對應的型別,是要進行判斷的,可以避免一些低階...

PHP中const與define的區別

在php中定義常量時,可用const與define這兩種方式,那他們到底有什麼區別呢?1.const用於類成員變數定義,一旦定義且不能改變其值。define定義全域性常量,在任何地方都可以訪問。2.define不能定義在類中,而const必須定義在類中,並且const定義的變數必須通過類名 變數名來...

php中define 函式使用

php中define 函式的使用方法 define 函式用於定義乙個常量,語法 define name,value,case insensitive 例如 define greeting hello world 作用 define 函式用於定義乙個常量。語法 define name,value,ca...