? 在IT面試中經(jīng)常會問到這個問題,總感覺自己自己,但又給不了一個特別肯定的答案,今天就做個詳細的總結(jié)。
常量:可以理解為一直不變的量。常量在被定義后,在腳本的其他任何地方都不能改變(常量由英文字母、下劃線和數(shù)字組成,但數(shù)字不能作為首字母出現(xiàn))。
變量:是指在程序執(zhí)行過程中數(shù)值可以變化的量。變量通過一個名字(變量名)來識別。系統(tǒng)為程序中的每一個變量分配一個存儲單元,變量名實質(zhì)上就是計算機內(nèi)存單元的命名。(命名規(guī)則和常量一樣)
局部變量:在函數(shù)的內(nèi)部定義的變量,其作用域是所在函數(shù)。
全局變量:被定義在所有函數(shù)以外,其作用域是整個PHP文件,如果想在用戶自定義函數(shù)內(nèi)部使用全局變量,則要使用global關(guān)鍵字聲明。
靜態(tài)變量:能夠在函數(shù)調(diào)用之后仍保留變量值,當再次回到作用域時,又可以繼續(xù)使用原來的值。而一般變量在函數(shù)調(diào)用結(jié)束后,其存儲的數(shù)據(jù)值將被清除,所占的內(nèi)存被釋放。使用靜態(tài)變量要先用static來聲明變量。
可變變量:是一種獨特的變量,它允許改變一個變量名稱。其工作原理是該變量的名稱由另外一個變量的值來確定。
?