php const和define的區別

2021-07-16 02:57:45 字數 1026 閱讀 9846

(1).const用於類成員變數的定義,一經定義,不可修改。define不可用於類成員變數的定義,可用於全域性常量。

(2).const可在類中使用,php5.3以後類外邊也可以,define不能。

class test 

function a()

}$t=new test();

$t->a();

輸出:

notice: use of undefined constant t001 - assumed 't001' in d:\www\test\index.php on line 10

notice: use of undefined constant t002 - assumed 't002' in d:\www\test\index.php on line 13

t002

(3).const不能在條件語句中定義常量。

例如: 

if (...)  

if (...)

(4).const採用乙個普通的常量名稱,define可以採用表示式作為名稱。 

const  foo = 'bar';  

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

(5).const只能接受靜態的標量,而define可以採用任何表示式。

例如: 

const bit_5 = 1 << 5;  // 無效的invalid  

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

(6).const定義的常量時大小寫敏感的,而define可通過第三個引數(為true表示大小寫不敏感)來指定大小寫是否敏感。

例如:

define('foo', 'bar', true);  

echo foo; // bar

echo foo; // bar

php const和define的區別

大家都知道define是定義常量的,如果在類中定義常量呢?當然不能用define,而用const,如下例 php 在類外面通常這樣定義常量 define php phpddt.com class myclass echo myclass constant classname myclass echo...

PHP const 和 defind 的區別

相同點 兩者都能定義常量 const foo bar defind foo bar const defind 1 位置 必須宣告在top level scopc 頂級域 無限制2 表示式 接受乙個靜態的標量型別 number,string,true.false,null,file,接受任何表示式 3...

預處理和 define

目錄前言 預處理 define 巨集的優缺點 巨集的優點 巨集的缺點 既然要談預處理,那麼肯定得知道預處理是什麼?程式語言的預處理的概念 在編譯之前進行的處理。c語言的預處理主要有三個方面的內容 巨集定義 檔案包含 條件編譯。預處理命令以符號 開頭。預處理命令總是占用源 中的單獨一行,並且總是以 字...