常量像變量一樣,用於臨時存儲一個值,但是常量在許多方面與變量不同。
常量:
1、是在程序執行期間無法改變數據,常量的作用域是全局的。
2、常量的命名與與變量相似,只是不帶美元符號“$”。一個有效的常量名由字母或者下劃線開頭,後面跟著任意數量的字母、數字或者下劃線。
3、一般在PHP中常量都為而且又分為系統常量和自定義常量。
=================================================================================
我們就大概說了 ,這個在後面的知識會介紹到。
1、__FILE__ 默認常量,是指PHP程序文件名及路徑;
2、__LINE__ 默認常量,是指PHP程序的行數;
3、__CLASS__ 類的名稱;
:通過define()函數來定義一個常量的,
其語法格式為:bool define ( string $name , mixed $value [, bool $case_insensitive = false ] )
name:指定常量的名稱(大寫)。
value:指定常量的值。(僅允許標量和 null。標量的類型是 整型, 浮點型,字符串型或者布爾型。 也能夠定義常量值的類型為 資源(resource) ,但並不推薦這麼做,可能會導致未知狀況的發生。)
insensitive:指定常量名稱是否區分大小寫。如果設置為true則不區分大小寫;如果設置為false則區分大小寫。如果沒有設置該參數,則取默認值false區分大小寫。
=================================================================================
下面我們來看一個例子吧:
<?php //定義一個大小寫敏感的常量: define("CONSTANT", "Hello world"); echo CONSTANT; // 輸出:Hello world echo Constant; // 報錯 //定義一個大小寫不敏感的常量: define("GREETING", "Hello you", true); echo GREETING; // 輸出:Hello you echo Greeting; // 輸出:Hello you ?>
了解了這個例子,我們以後寫常量還是直接用大寫的好。
同時我們還要注意常量的打印:
1、當你要打印常量時,不能用引號括住常量,就像上面的例子一樣;
2、使用連接運算符來打印常量
<?php define("CONSTANT", "Hello world"); echo 'I say:' . CONSTANT; ?>
這裡看過去常量是不是很簡單,但是它的用法也有很多種,就比如最常用一個是:
定義一個常量,來判斷頁面之間的非法調用,具體一點就是我們做網頁首頁的時候,經常把首頁分離出頭部和腳部兩個文件,這時候我們要防止有人非法操作,直接調用這2個文件,這時候我們就直接在這2個文件中分別加上這麼一段代碼
<?php //防止惡意調用 if (!defined('CMS_DH')) { exit('Access Defined!'); } ?>
在首頁中加入下面的代碼(首頁要引入頭部和腳部文件,具體的引入方法以後在說,有興趣的可以自己百度谷歌php文件引入)
<?php //定義個常量,用來授權調用頭部和腳部2個文件 define('CMS_DH',true); ?>
以上只是一個小小的例子,以後會說,或是自己挖掘吧。