switch 語句用於根據單一表達式的不同值執行不同代碼塊,比多重 if-elseif 更清晰高效。
switch (n) {
case label1:
// n == label1 時執行
break;
case label2:
// n == label2 時執行
break;
default:
// 所有 case 都不匹配時執行
}
n(通常為變量)一次case 標籤比較(鬆散比較 ==)case 代碼break 跳出 switch,否則繼續執行下一個 case(貫穿特性)default 時執行 default<?php
$favcolor = "red";
switch ($favcolor) {
case "red":
echo "你喜歡的顏色是紅色!";
break;
case "blue":
echo "你喜歡的顏色是藍色!";
break;
case "green":
echo "你喜歡的顏色是綠色!";
break;
default:
echo "你喜歡的顏色不是 紅、藍、或綠色!";
}
?>
case "red": case "orange": echo "暖色"; break;switch ===,需改用 match (PHP 8.0+) 或 if-elseifswitch (0) 會匹配 case "abc"(字符串轉數字為 0),建議預先轉型switch 通常優於 if-elseif(跳表優化)