條件語句用於基於不一樣條件執行不一樣的動做
PHP 條件語句
在您編寫代碼時,常常會但願爲不一樣的決定執行不一樣的動做。您能夠在代碼中使用條件語句來實現這一
點。
在 PHP 中,咱們可使用如下條件語句:
if 語句 - 若是指定條件爲真,則執行代碼
if...else 語句 - 若是條件爲 true,則執行代碼;若是條件爲 false,則執行另外一端代碼
if...elseif....else 語句 - 選擇若干段代碼塊之一來執行
switch 語句 - 語句多個代碼塊之一來執行
1、PHP if...else...elseif 語句
1.PHP - if 語句
if 語句用於在指定條件爲 true 時執行代碼。
語法
if (條件) {
當條件爲 true 時執行的代碼;
}
下例將輸出 "Have a good day!",若是當前時間 (HOUR) 小於 20:
實例
<?php
$t=date("H");
if ($t<"20") {
echo "Have a good day!";
}
?>
2.PHP - if...else 語句
請使用 if....else 語句在條件爲 true 時執行代碼,在條件爲 false 時執行另外一段代碼。
語法
if (條件) {
條件爲 true 時執行的代碼;
} else {
條件爲 false 時執行的代碼;
}
下例將輸出 "Have a good day!",若是當前時間 (HOUR) 小於 20,不然輸出 "Have a good night!":
實例
<?php
$t=date("H");
if ($t<"20") {
echo "Have a good day!";
} else {
echo "Have a good night!";
}
?>
3.PHP - if...elseif....else 語句
請使用 if....elseif...else 語句來選擇若干代碼塊之一來執行。
語法
if (條件) {
條件爲 true 時執行的代碼;
} elseif (condition) {
條件爲 true 時執行的代碼;
} else {
條件爲 false 時執行的代碼;
}
下例將輸出 "Have a good morning!",若是當前時間 (HOUR) 小於 10,若是當前時間小於 20,則輸出
"Have a good day!"。不然將輸出 "Have a good night!":
實例
<?php
$t=date("H");
if ($t<"10") {
echo "Have a good morning!";
} elseif ($t<"20") {
echo "Have a good day!";
} else {
echo "Have a good night!";
}
?>
2、PHP Switch 語句
switch 語句用於基於不一樣條件執行不一樣動做。
1.Switch 語句
若是您但願有選擇地執行若干代碼塊之一,請使用 Switch 語句。
使用 Switch 語句能夠避免冗長的 if..elseif..else 代碼塊。
語法
switch (expression)
{
case label1:
code to be executed if expression = label1;
break;
case label2:
code to be executed if expression = label2;
break;
default:
code to be executed
if expression is different
from both label1 and label2;
}
工做原理:
1. 對錶達式(一般是變量)進行一次計算
2. 把表達式的值與結構中 case 的值進行比較
3. 若是存在匹配,則執行與 case 關聯的代碼
4. 代碼執行後,break 語句阻止代碼跳入下一個 case 中繼續執行
5. 若是沒有 case 爲真,則使用 default 語句
實例
<?php
switch ($x)
{
case 1:
echo "Number 1";
break;
case 2:
echo "Number 2";
break;
case 3:
echo "Number 3";
break;
default:
echo "No number between 1 and 3";
}
?>
</body>
</html>
3、PHP while 循環
PHP while 循環在指定條件爲 true 時執行代碼塊。
PHP 循環
在您編寫代碼時,常常須要反覆運行同一代碼塊。咱們可使用循環來執行這樣的任務,而不是在腳本
中添加若干幾乎相等的代碼行。
在 PHP 中,咱們有如下循環語句:
while - 只要指定條件爲真,則循環代碼塊
do...while - 先執行一次代碼塊,而後只要指定條件爲真則重複循環
for - 循環代碼塊指定次數
foreach - 遍歷數組中的每一個元素並循環代碼塊
1.PHP while 循環
只要指定的條件爲真,while 循環就會執行代碼塊。
語法
while (條件爲真) {
要執行的代碼;
}
實例
<?php
$x=1;
while($x<=5) {
echo "這個數字是:$x <br>";
$x++;
}
?>
上例首先把變量 $x 設置爲 1($x=1)。而後執行 while 循環,只要 $x 小於或等於 5。循環每運行一
次,$x 將遞增 1:
2.PHP do...while 循環
do...while 循環首先會執行一次代碼塊,而後檢查條件,若是指定條件爲真,則重複循環。
語法
do {
要執行的代碼;
} while (條件爲真);
下面的例子首先把變量 $x 設置爲 1($x=1)。而後,do while 循環輸出一段字符串,而後對變量 $x
遞增 1。隨後對條件進行檢查($x 是否小於或等於 5)。只要 $x 小於或等於 5,循環將會繼續運行:
實例
<?php
$x=1;
do {
echo "這個數字是:$x <br>";
$x++;
} while ($x<=5);
?>
請注意,do while 循環只在執行循環內的語句以後纔對條件進行測試。這意味着 do while 循環至少會
執行一次語句,即便條件測試在第一次就失敗了。
下面的例子把 $x 設置爲 6,而後運行循環,隨後對條件進行檢查:
實例
<?php
$x=6;
do {
echo "這個數字是:$x <br>";
$x++;
} while ($x<=5);
?>
4、PHP for 循環
PHP for 循環執行代碼塊指定的次數。
1.PHP for 循環
若是您已經提早肯定腳本運行的次數,可使用 for 循環。
語法
for (init counter; test counter; increment counter) {
code to be executed;
}
參數:
init counter:初始化循環計數器的值
test counter:: 評估每一個循環迭代。若是值爲 TRUE,繼續循環。若是它的值爲 FALSE,循環結
束。
increment counter:增長循環計數器的值
下面的例子顯示了從 0 到 10 的數字:
實例
<?php
for ($x=0; $x<=10; $x++) {
echo "數字是:$x <br>";
}
?>
2.PHP foreach 循環
foreach 循環只適用於數組,並用於遍歷數組中的每一個鍵/值對。
語法
foreach ($array as $value) {
code to be executed;
}
每進行一次循環迭代,當前數組元素的值就會被賦值給 $value 變量,而且數組指針會逐一地移動,直
到到達最後一個數組元素。
下面的例子演示的循環將輸出給定數組($colors)的值:
實例
<?php
$colors = array("red","green","blue","yellow");
foreach ($colors as $value) {
echo "$value <br>";
}
?>