PHP if...else 語句
PHP 條件語句
當(dāng)您編寫代碼時,您常常需要為不同的判斷執(zhí)行不同的動作。您可以在代碼中使用條件語句來完成此任務(wù)。
在 PHP 中,提供了下列條件語句:
· if 語句 - 在條件成立時執(zhí)行代碼
· if...else 語句 - 在條件成立時執(zhí)行一塊代碼,條件不成立時執(zhí)行另一塊代碼
· if...else if....else 語句 - 在若干條件之一成立時執(zhí)行一個代碼塊
· switch 語句 - 在若干條件之一成立時執(zhí)行一個代碼塊
PHP - if 語句
if 語句用于僅當(dāng)指定條件成立時執(zhí)行代碼。
簡單的IF語句由兩部分組成,expr是我們的表達(dá)式,而statement是我們需要執(zhí)行的代碼;當(dāng)expr為true的時候,statement被執(zhí)行;反之,則被忽略
if (expr)
statement
expr必須放在一對圓括號中間
通常在if條件判斷成功后,我們需要執(zhí)行多條語句,這種情況下,需要使用{}將語句括起來,組成代碼塊
語法
if (條件)
{
條件成立時要執(zhí)行的代碼;
}
如果當(dāng)前時間小于 20,下面的實(shí)例將輸出 "Have a good day!":
實(shí)例
<?php $t=date("H"); if ($t<"20") { echo "Have a good day!"; } ?>
PHP - if...else 語句
有時候我們不僅僅需要判斷當(dāng)expr條件為true時執(zhí)行什么語句,另外,當(dāng)expr條件為false時需要執(zhí)行什么
在條件成立時執(zhí)行一塊代碼,條件不成立時執(zhí)行另一塊代碼,請使用 if....else 語句。
語法
if (條件)
{
條件成立時執(zhí)行的代碼;
}
else
{
條件不成立時執(zhí)行的代碼;
}
如果當(dāng)前時間小于 20,下面的實(shí)例將輸出 "Have a good day!",否則輸出 "Have a good night!":
實(shí)例
<?php $t=date("H"); if ($t<"20") { echo "Have a good day!"; } else { echo "Have a good night!"; } ?>
PHP - if...else if....else 語句
在若干條件之一成立時執(zhí)行一個代碼塊,請使用 if....else if...else 語句。
語法
if (條件)
{
if 條件成立時執(zhí)行的代碼;
}
else if (條件)
{
elseif 條件成立時執(zhí)行的代碼;
}
else
{
條件不成立時執(zhí)行的代碼;
}
如果當(dāng)前時間小于 10,下面的實(shí)例將輸出 "Have a good morning!",如果當(dāng)前時間不小于 10 且小于 20,則輸出 "Have a good day!",否則輸出 "Have a good night!":
實(shí)例
<?php $t=date("H"); if ($t<"10") { echo "Have a good morning!"; } else if ($t<"20") { echo "Have a good day!"; } else { echo "Have a good night!"; } ?>
PHP - switch 語句
switch 語句將在下一章進(jìn)行講解。
三元運(yùn)算符
PHP有一個特殊的運(yùn)算符,我們在之前學(xué)習(xí)運(yùn)算符的時候并沒有介紹,在學(xué)習(xí)了if和else
語句后,我們可以介紹了
(expr1) ? (expr2) : (expr3)
當(dāng)expr1條件為真時,值為expr2,否則值為expr3
相當(dāng)于條件語句:
if (expr1) {
expr2
} else {
expr3
}
elseif語句
當(dāng)出現(xiàn)多個條件時,我們可以使用elseif來構(gòu)造多選項(xiàng)的序列,相當(dāng)于else+if語句的組合,因此寫成 else if
也是可以的,優(yōu)化代碼
舉個例子:
if ($dir == 'west') {
echo '西';
} else if ($dir == 'east') {
echo '東';
} else if ($dir == 'north') {
echo '北';
} else if ($dir == 'sourth') {
echo '南';
} else {
echo '未知';
}
需要注意:使用else if時,每個代碼塊都是互斥的條件,最終只有一個代碼塊會被執(zhí)行。