常量是一個簡單的標識符。在腳本執行期間該值不能改變(除了所謂的魔術常量,他們其實不是常量)。常量默認大小寫敏感。通常常量標識符總是大寫的。
**一、常量和變量有如下不同**:
1、常量前面沒有美元符號($)
2、常量只能通過define()函數定義,而不能通過賦值語句
3、常量可以不用理會變量的作用域在任何地方定義和訪問
4、常量一旦定義就不能重新定義或取消定義
5、常量的值只能是標量(boolean、integer、float和string)
**二、****const****和define的區別**
1、const是一個語言結構;const定義的常量是大小寫敏感。而define是一個函數,可以通過第三個參數來指定是否區分大小寫。true表示大小寫不敏感,默認為false
define('PI', 3.14, true);
2、const簡單易讀,編譯時要比define快很多。
3、const可在類中使用,用于類成員常量定義(在php5.3.0以后,可以使用const關鍵字在類定義的外部定義常量),定義后不可修改,const在類內定義常量,并且const必須通過類名::變量名來進行訪問;**define不能在類中使用,可用于全局變量**
4、**const是在編譯時定義,因此必須處于最頂端的作用區域,不能在函數,循環及if條件中使用;而define是函數,也就是能調用函數的地方都可以使用**
5、const只能用普通的常量名,define常量名中可以有表達式
6、const定義的常量只能是靜態常量,define可以是任意表達式
- PHP
- php 簡單語法
- php 語法
- PHP書寫歸范總結
- 代碼縮進
- 變量賦值時候
- if條件判斷
- 避免嵌入式賦值
- 函數和方法的注釋
- php 開發常見問題總結
- 1、查找兩個經緯度之間的距離
- 2、PHP常量詳解:define和const的區別
- 3、常見面試題及特殊情況
- mysql
- MySQL 介紹
- MySQL 及 SQL 注入
- mysql常見問題
- MySQL數據類型
- MySQL where語句
- MySQL alter 命令
- MySQL 索引
- MySQL 復制表
- MySQL 處理重復數據
- redis
- redis介紹
- redis數據類型(共5種 )
- redis常見問題及使用場景
- redis事務
- Redis 分區
- Linux
- Linux介紹
- Linux 系統目錄結構
- Linux 文件與目錄管理
- shell
- Shell 教程介紹
- html+css+js
- 優秀技術文章
- 技術鏈接
- go語言
- go開發規范及注意事項
- go簡單語法
- go開發技術總結
- 博客
- 小程序
- 1、頁面跳轉