根据多个不同条件执行不同语句,执行时直到 switch 的程序段结束或者遇到第一个 break 语句为止。
switch (变量) { case 与变量比较1: 语句; break; case 与变量比较2: 语句; break; ... default: 语句; break; } |
描述:
case从上往下开始判断,如果符合则执行相关语句
case可以是多条
break是退出switch,不执行下条case
case都没有符合的时候,会执行default后的语句
case与变量比较值类型可以为数字、字符串、表达式
<?php
$a=59;
switch ($a) {
case $a<60:
echo "0"; //59<60所以输出:0
break; //以下条件就不执行判断了
case $a==59:
echo "1"; //上面遇到break,这不执行
break;
case "a":
echo "a"; //上面遇到break,这不执行
break;
}
//结果输出:0
?><?php
$b=59;
switch ($b) {
case 60:
echo "3"; //条件不符
case 59:
echo "4"; //条件符合所以输出:4
default:
echo "5"; //以为case后没有break所以输出:5
}
//结果输出:45
?><?php
$c="a";
switch ($c) {
case "b":
echo "6"; //条件不符
break;
case "a":
echo "7"; //输出7
break;
default:
echo "8"; //上面遇到break所以不输出
break;
}
//结果输出:7
?>