php中const與define的區別分析

來源:互聯網
上載者:User
  1. if (...) {
  2. const FOO = 'BAR'; // invalid
  3. }
  4. but
  5. if (...) {
  6. define('FOO', 'BAR'); // valid
  7. }
複製代碼

4、const採用一個普通的常量名稱,define可以採用運算式作為名稱。例如:

  1. const FOO = 'BAR';
  2. for ($i = 0; $i < 32; ++$i) {
  3. define('BIT_' . $i, 1 << $i);
  4. }
複製代碼

5、const只能接受靜態標量,而define可以採用任何錶達式。例如:

  1. const BIT_5 = 1 << 5; // invalid
  2. but
  3. define('BIT_5', 1 << 5); // valid
複製代碼

6、const 總是大小寫敏感,然而define()可以通過第三個參數來定義大小寫不敏感的常量例如:

  1. define('FOO', 'BAR', true);
  2. echo FOO; // BAR
  3. echo foo; // BAR
複製代碼

由以上的樣本,我們得出,const簡單易讀,它本身是一個語言結構,而define是一個方法,用const定義在編譯時間比define快很多。至於用哪個,根據自己的需要來吧。

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.