在程序執行的過(guò)程中,變量存儲的值可以隨時(shí)改變,而常量存儲的值是不可以改變的。
變量用于存儲臨時(shí)數據信息。某一變量被定義的時(shí)候,系統會(huì )自動(dòng)為該變量分配一個(gè)存儲空間存放變量的值。我們可以在定義變量的時(shí)候對其賦值,如果需要改動(dòng)變量的值,只需再次對其進(jìn)行賦值即可。對于那些臨時(shí)數據信息或者處理過(guò)程,都可以存放在變量中。
常量用于存儲不經(jīng)常改變的數據信息。定義常量的時(shí)候可以對其賦值,在程序的整個(gè)執行期間內,這個(gè)賦值都有效且不可再次對該常量進(jìn)行賦值操作。
我們先從php常量與變量的定義來(lái)看兩者有什么不同:
常量:在PHP我們使用define()函數來(lái)定義常量
變量:PHP中的所有變量都是用$開(kāi)頭,然后后面跟上變量的名稱(chēng),在給變量賦值。
從php常量與變量定義來(lái)看我們可以得到:
1、常量前面沒(méi)有美元符號($);
2、常量只能用 define() 函數定義,而不能通過(guò)賦值語(yǔ)句;
再看一下php常量與變量被定義后有什么不同:
常量:常量被一旦定義就不能被重新定義或者取消定義。
變量:變量指的就是在程序執行過(guò)程中數值可以變化的量,它與我們所講的常量是相反的
這樣我們又能得到一下的結果:
常量只要被定義就不能改變,而變量是可以改變的。
再看一下常量與變量的值:
常量:常量的值只能是標量,即可以是 整型 浮點(diǎn)型 布爾型 null 字符串等,不能是 數組 對象 資源,而變量可以是PHP所有的數據類(lèi)型(PHP的八種數據類(lèi)型)。
在看一下php常量與變量的作用域:
常量的作用域:常量無(wú)論在那定義,都可以直接調用,沒(méi)有作用域。
變量的作用域:變量定義在那個(gè)范圍就在那個(gè)范圍有效,如函數中定義的變量就只在函數中有效。
總結:
通過(guò)上面的內容我們可以總結一下幾點(diǎn)來(lái)上面php常量與變量的區別:
1、常量前面沒(méi)有美元符號($)
2、常量只能用 define() 函數定義,而不能通過(guò)賦值語(yǔ)句
3、常量可以不用理會(huì )變量范圍的規則而在任何地方定義和訪(fǎng)問(wèn)
4、常量一旦定義就不能被重新定義或者取消定義
5、常量的值只能是標量
以上內容僅供參考。