常量那些事儿
什么是常量?
常量可以理解為值不變的量(如圓周率);或者是常量值被定義后,在腳本的其他任何地方都不可以被改變。PHP中的常量分為自定義常量和系統(tǒng)常量。
自定義常量是根據(jù)我們開(kāi)發(fā)的需要,而定義的常量,它通過(guò)使用PHP中的函數(shù)define()定義。(注:函數(shù),我們可以理解為一個(gè)混凝土攪拌機(jī),亦或是一個(gè)篩子,通過(guò)入口提供原料,然后出口產(chǎn)出結(jié)果,在函數(shù)中也允許入口不提供任何數(shù)據(jù),出口也允許不返回任何值。)
define()函數(shù)的語(yǔ)法格式為:
bool define(string $constant_name, mixed $value[, $case_sensitive = true])它有3個(gè)參數(shù)(也就是原料):
第一個(gè)參數(shù)“constant_name”為必選參數(shù),常量名稱(chēng),即標(biāo)志符,常量的命名規(guī)則與變量的一致,但是要注意哦,它可不帶美元符號(hào)哦。第二個(gè)參數(shù)“value”為必選參數(shù),它是常量的值。第三個(gè)參數(shù)“case_sensitive”為可選參數(shù),指定是否大小寫(xiě)敏感,設(shè)定為true表示不敏感,一般不指定第三個(gè)參數(shù)的情況下,默認(rèn)第三個(gè)參數(shù)的值為false。
(注: string表示參數(shù)類(lèi)型為字符串類(lèi)型,mixed表示參數(shù)類(lèi)型可以接受為多種不同的類(lèi)型,case_sensitive = true表示默認(rèn)為布爾類(lèi)型TRUE)
接下來(lái)我們來(lái)定義一個(gè)圓周率常量,一種是直接使用常量名,另一種是通過(guò)給變量值為常量的變量進(jìn)行操作,如下:
看結(jié)果:
3.14
3.14
可見(jiàn)兩種操作方式可以的到相同的結(jié)果,可見(jiàn)他們是等價(jià)的,可以放心使用。
常量有什么用呢?
常量主要功效是避免重復(fù)定義,篡改變量值。在我們進(jìn)行團(tuán)隊(duì)開(kāi)發(fā)時(shí),或者代碼量很大的時(shí)候,對(duì)于一些第一次定義后不改變的量,如果我們使用變量,在不知情的情況下,使用同一變量名時(shí),變量值就會(huì)被替換掉,從而會(huì)引發(fā)服務(wù)器執(zhí)行錯(cuò)誤的任務(wù)。
此外,可以提高代碼的可維護(hù)性,由于某些原因,常量的值需要變更時(shí)候,我們只需要修改一個(gè)地方。例如在做計(jì)算中,起初我們?nèi)A周率為3.14,于是很多計(jì)算中我們都使用3.14進(jìn)行計(jì)算,當(dāng)要求計(jì)算精度提高,圓周率需要取3.142的時(shí)候,我們不得不修改所有使用3.14的代碼,倘若代碼量比較多時(shí),不僅工量大,還可能遺漏。
下面我們來(lái)認(rèn)識(shí)一個(gè)新的東西。
認(rèn)識(shí)一下系統(tǒng)常量
系統(tǒng)常量是PHP已經(jīng)定義好的常量,我們可以直接拿來(lái)使用,常見(jiàn)的系統(tǒng)常量有:
(1)FILE :php程序文件名,它可以幫助我們獲取當(dāng)前文件在服務(wù)器的物理位置。
(2)LINE :PHP程序文件行數(shù)。它可以告訴我們,當(dāng)前代碼在第幾行。
(3)PHP_VERSION:當(dāng)前解析器的版本號(hào)。它可以告訴我們當(dāng)前PHP解析器的版本號(hào),我們可以提前知道我們的PHP代碼是否可被該P(yáng)HP解析器解析。
(4)PHP_OS:執(zhí)行當(dāng)前PHP版本的操作系統(tǒng)名稱(chēng)。它可以告訴我們服務(wù)器所用的操作系統(tǒng)名稱(chēng),我們可以根據(jù)該操作系統(tǒng)優(yōu)化我們的代碼。讓我們一起來(lái)看看吧
echo __FILE__;//文件名 echo "<br />"; echo __LINE__;//文件行數(shù) echo "<br />"; echo PHP_VERSION;//解析器版本號(hào) echo "<br />"; echo PHP_OS;//操縱系統(tǒng) echo "<br />"; ?>執(zhí)行結(jié)果如下:
/54/806/CQbd/index.php
4
5.6.11
Linuxx
注意:文件名和文件行數(shù)中的下劃線是兩條小的,跟后面的不一樣。
總結(jié)
- 上一篇: 吃鸡好友怎么删除
- 下一篇: 今日头条怎么发视频赚钱