switch 與 if 不同的是,他是個一對多選項的判斷式。就是當 if 針對單一變數進行很多次的判斷時,就可以直接使用 switch 來代替 if 。Switch的用法看似複雜,但其實方便又精簡阿,以下做 switch 的用法說明。
我們用一個表單做判斷式的說明
<form action="" method="post"> 中餐吃:<select name="item"> <option value="1">便當</option> <option value="2">魷魚羹</option> <option value="3">牛排</option> </select> <input type="submit" name="Submit" value="決定"> </form> <?php switch ($_POST["item"]){ case "1": echo "中午吃便當"; break; case "2": echo "中午吃魷魚羹"; break; case "3": echo "中午吃牛排"; break; default: echo "不想吃東西"; } ?>
case為執行點,break為結束點。
如果我們沒有在每個case加入 break; 則結果會出現至下個 break; 為止。
<form action="" method="post"> 中餐吃:<select name="item"> <option value="1">便當</option> <option value="2">魷魚羹</option> <option value="3">牛排</option> </select> <input type="submit" name="Submit" value="決定"> </form> <?php switch ($_POST["item"]){ case "1": echo "中午吃便當"; case "2": echo "中午吃魷魚羹"; case "3": echo "中午吃牛排"; break; default: echo "不想吃東西"; } ?>
case 1: 中午吃便當 中午吃魷魚羹 中午吃牛排
case 2: 中午吃魷魚羹 中午吃牛排
case 3: 中午吃牛排
default:不想吃東西