if單分支的基本語法結構
if(條件表達式){
//執行語句;
}
if雙分支
基本語法結構
if(條件表達式){
//執行語句;
}else{
//執行語句;
}
if多重分支
基本語法結構是
if(條件表達式){
//執行語句;
}else if (條件表達式){
//執行語句;
}else if(條件表示式){
//執行語句;
}else{//這裡可能還有更多的else if
//執行語句;
}
☞ 對上面的結構請注意:
1) else if 可以有一個,也可以有多個
2) else 可以沒有
例
代碼如下 復制代碼<html>
<FORM METHOD=POST ACTION="">
帳號: <INPUT TYPE="text" NAME="account"><BR>
密碼: <INPUT TYPE="text" NAME="password"><BR>
<INPUT TYPE="submit" value="送出">
</FORM>
</html>
<?php
if($account == "lord" && $password == "pass"){
echo "歡迎 $_POST[account], 你的密碼是 $_POST[password]";
}elseif($_POST[account] == "god" && $_POST[password] == "dog"){
$y = date("Y") - 1911;
$m = date("m");
$d = date("d");
echo "歡迎 $_POST[account], 今天是民國".$y."年".$m."月".$d."日";
}else{
echo "登入失敗:<hr> 輸入的資料:<br>帳號: $_POST[account] <br>密碼: $_POST[password]";
}
?>
switch分支語句
基本語法結構
switch(表達式){
case 常量1:
//執行語句;
break;
case 常量2:
//執行語句;
break;
defual:
//執行語句;
break;
}
例
下面兩個例子用不同方法實現同樣的事情,第一個是用 if...elseif...else 語句,一個使用 switch語句。
代碼如下 復制代碼 <?phpif ($i == 0) { echo "i equals 0";} elseif ($i == 1) { echo "i equals 1";} elseif ($i == 2) { echo "i equals 2";}上面這段 PHP 代碼的意思是:如果變量 $i 等於 0,則輸出 "i equals 0";如果變量 $i 等於 1,則輸出 "i equals 1";如果變量 $i 等於 2,則輸出 "i equals 2";如果都不是,則輸出"i is not equal to 0, 1 or 2"。
switch 語句和 elseif 語句的比較
在 switch 語句中,條件只求一次,然後和每個 case 比較,而在 elseif 語句中,條件會再次求值。如果你的條件比較復雜,或者是多次循環,用 switch 語句速度會更加快些。
isEmpty="";
$isEmpty=" 非空 ";
$test = empty($isEmpty)?"":trim($isEmpty);
三目運算符?: 根據前面的條件empty($isEmpty)true或者false,條件為true時,計算?後面的表達式,false時計算:後面的表達式。
如果不習慣可以改成如下代碼
代碼如下 復制代碼if (empty($isEmpty)) //條件成立
{
$cookie = "";
}
else
{
$cookie = trim($isEmpty);
}
☞ 請注意:
1) case 語句有一到多
2) defaul 語句可以沒有(根據自己代碼的業務邏輯)
3) 通常,在case 語句後,要帶break ,表示退出switch語句
4) 常量的類型 (int, float, 字符串, 布爾型)
補充
比較運算符。
$a == $b 等於 TRUE,如果 $a 等於 $b。
$a != $b 不等 TRUE,如果 $a 不等於 $b。
$a <> $b 不等 TRUE,如果 $a 不等於 $b。
$a < $b 小與 TRUE,如果 $a 嚴格小於 $b。
$a > $b 大於 TRUE,如果 $a 嚴格 $b。
$a <= $b 小於等於 TRUE,如果 $a 小於或者等於 $b。
$a >= $b 大於等於 TRUE,如果 $a 大於或者等於 $b。
邏輯運算符。
$a and $b And(邏輯與) TRUE,如果 $a 與 $b 都為 TRUE。
$a or $b Or(邏輯或) TRUE,如果 $a 或 $b 任一為 TRUE。
$a xor $b Xor(邏輯異或) TRUE,如果 $a 或 $b 任一為 TRUE,但不同時是。
! $a Not(邏輯非) TRUE,如果 $a 不為 TRUE。
$a && $b And(邏輯與) TRUE,如果 $a 與 $b 都為 TRUE。
$a || $b Or(邏輯或) TRUE,如果 $a 或 $b 任一為 TRUE。