PHP學習之路(三)

來源:互聯網
上載者:User

標籤:bsp   程式   代碼量   src   作用   head   nbsp   任務   pre   

2017.08.08

Day  3  周二  晴

PHP-什麼是常量

什麼是常量?常量可以理解為值不變的量(如圓周率);或者是常量值被定義後,在指令碼的其他任何地方都不可以被改變。PHP中的常量分為自訂常量和系統常量(後續小節會詳細介紹)。

自訂常量是根據我們開發的需要,而定義的常量,它通過使用PHP中的函數define()定義。(註:函數,我們可以理解為一個混凝土攪拌機,亦或是一個篩子,通過入口提供原料,然後出口產出結果,在函數中也允許入口不提供任何資料,出口也允許不返回任何值。)

define()函數的文法格式為:

bool define(string $constant_name, mixed $value[, $case_sensitive = true])

它有3個參數(也就是原料):

第一個參數“constant_name”為必選參數,常量名稱,即標誌符,常量的命名規則與變數的一致,但是要注意哦,它可不帶貨幣符號哦。第二個參數“value”為必選參數,它是常量的值。第三個參數“case_sensitive”為選擇性參數,指定是否大小寫敏感,設定為true表示不敏感,一般不指定第三個參數的情況下,預設第三個參數的值為false。

(註: string表示參數類型為字串類型,mixed表示參數類型可以接受為多種不同的類型,case_sensitive = true表示預設為布爾類型TRUE)

PHP-常量的作用

常量有什麼用呢?

常量主要功效是可以避免重複定義,篡改變數值。在我們進行團隊開發時,或者代碼量很大的時候,對於一些第一次定義後不改變的量,如果我們使用變數,在不知情的情況下,使用同一變數名時,變數值就會被替換掉,從而會引發伺服器執行錯誤的任務。

此外,使用常量還能提高代碼的可維護性。如果由於某些原因,常量的值需要變更時候,我們只需要修改一個地方。例如在做計算中,起初我們取圓周率為3.14,於是很多計算中我們都使用3.14進行計算,當要求計算精度提高,圓周率需要取3.142的時候,我們不得不修改所有使用3.14的代碼,倘若代碼量比較多時,不僅工作量大,還可能遺漏。

鍵入:

<?php
define("PI",3.14);
$r=3;
echo "面積為:".(PI*$r*$r)."<br />";
echo "周長為:".(2*PI*$r)."<br />";
?>

輸出

面積為:28.26
周長為:18.84

PHP-認識一下系統常量

系統常量是PHP已經定義好的常量,我們可以直接拿來使用,常見的系統常量有:

(1)__FILE__ :php程式檔案名稱。它可以協助我們擷取當前檔案在伺服器的物理位置。

(2)__LINE__ :PHP程式檔案行數。它可以告訴我們,當前代碼在第幾行。

(3)PHP_VERSION:當前解析器的版本號碼。它可以告訴我們當前PHP解析器的版本號碼,我們可以提前知道我們的PHP代碼是否可被該PHP解析器解析。

(4)PHP_OS:執行當前PHP版本的作業系統名稱。它可以告訴我們伺服器所用的作業系統名稱,我們可以根據該作業系統最佳化我們的代碼。

PHP-常量如何取值

定義了常量,那麼就要使用常量,那麼如何擷取常量值呢?

擷取常量值的有兩種方法取值。第一種是使用常量名直接擷取值;例如計算圓周率的面積,如下(“*”是運算子,相當於乘號,後面部分的小節會介紹):

<?phpdefine("PI",3.14);$r=1;$area = PI*$r*$r; //計算圓的面積?>

第二種是使用constant()函數。它和直接使用常量名輸出的效果是一樣的,但函數可以動態輸出不同的常量,在使用上要靈活、方便,其文法格式如下:

mixed constant(string constant_name)

第一個參數constant_name為要擷取常量的名稱,也可為儲存常量名的變數。如果成功則返回常量的值,失敗則提示錯誤資訊常量沒有被定義。(註:mixed表示函數傳回值類型為多種不同的類型,string表示參數類型為字串類型)

例如:

PHP-如何判定常量是否被定義

如果常量被重複定義以後,PHP解析器會發出“Constant XXX already defined”的警告,提醒我們該常量已經被定義過。那麼,在團隊開發,或代碼量很大的情況下,我們如何去判定一個常量是否被定義呢?

defined()函數可以協助我們判斷一個常量是否已經定義,其文法格式為:

bool defined(string constants_name)

它只有參數constant_name,指的是要擷取常量的名稱,若存在則返回布爾類型true,否則返回布爾類型false; (註:bool表示函數傳回值類型為布爾類型)

鍵入

 

<?php
define("PI1",3.14);
$p = "PI1";
$is1 = defined($p);
$is2 = defined("PI2");
var_dump($is1);
var_dump($is2);
?>

輸出:

bool(true)
bool(false)

什麼是運算子

什麼是運算子?運算子是告訴PHP做相關運算的標識符號。例如,你需要計算123乘以456等於多少,這時候就需要一個符號,告訴伺服器,你需要做乘法運算。

PHP中的運算子有哪些?PHP運算子一般分為算術運算子、賦值運算子、比較子、三元運算子、邏輯運算子、字串串連運算子、錯誤控制運算子。

PHP中的算術運算子

    算術運算子主要是用於進行算術運算的,例如:加法運算、減法運算、乘法運算、除法運算。在PHP中的常用的算術運算子對應下表:

 

PHP中的賦值運算子

 

PHP的賦值運算子有兩種,分別是:

(1)“=”:把右邊運算式的值賦給左邊的運算數。它將右邊運算式值複製一份,交給左邊的運算數。換而言之,首先給左邊的運算數申請了一塊記憶體,然後把複製的值放到這個記憶體中。

(2)“&”:引用賦值,意味著兩個變數都指向同一個資料。它將使兩個變數共用一塊記憶體,如果這個記憶體儲存的資料變了,那麼兩個變數的值都會發生變化。

鍵入:

<?php
$a = "我在學習PHP!";
$b = $a;
$c = &$a;
$a = "我天天在學習PHP!";
echo $b."<br />";
echo $c."<br />";
?>

輸出:

我在學習PHP!


我天天在學習PHP!

 

這就是今天的分量~

2017/08/08

22“00

 

PHP學習之路(三)

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.