手册
目录
使用 switch 语句来选择要执行的多个代码块之一。
switch (表达式) {
case 标签 1:
// 代码块;
break;
case 标签 2:
// 代码块;
break;
case 标签 3:
// 代码块;
break;
default:
// 代码块;
}
这是它的工作原理:
break 关键字会跳出 switch 块default 代码块
$favcolor = "red";
switch ($favcolor) {
case "red":
echo "你最喜欢的颜色是红色!";
break;
case "blue":
echo "你最喜欢的颜色是蓝色!";
break;
case "green":
echo "你最喜欢的颜色是绿色!";
break;
default:
echo "你最喜欢的颜色既不是红色、蓝色,也不是绿色!";
}
运行实例 »点击 "运行实例" 按钮查看在线实例
当 PHP 遇到 break 关键字时,它会跳出 switch 块。
这将停止执行更多代码,并且不再测试更多 case。
最后一个块不需要 break,因为该块无论如何都会结束。
警告:如果你在不是最后一个的 case 中省略了 break 语句,并且该 case 得到了匹配,那么即使评估结果与 case 不匹配,下一个 case 也将被执行!
如果我们从 case "red" 中移除 break 语句会发生什么?
$favcolor 是红色,所以执行了 case "red" 的代码块,但由于它没有 break 语句,因此也会执行 case "blue" 的代码块:
$favcolor = "red";
switch ($favcolor) {
case "red":
echo "你最喜欢的颜色是红色!";
case "blue":
echo "你最喜欢的颜色是蓝色!";
break;
case "green":
echo "你最喜欢的颜色是绿色!";
break;
default:
echo "你最喜欢的颜色既不是红色、蓝色,也不是绿色!";
}
运行实例 »点击 "运行实例" 按钮查看在线实例
default 关键字指定了在没有 case 匹配时要运行的代码:
如果没有 case 得到匹配,则执行 default 块:
$d = 4;
switch ($d) {
case 6:
echo "今天是星期六";
break;
case 0:
echo "今天是星期天";
break;
default:
echo "期待周末";
}
运行实例 »点击 "运行实例" 按钮查看在线实例
default case 不必是 switch 块中的最后一个 case:
允许将 default 块放在 switch 块的末尾之外的位置,但不建议这样做。
$d = 4;
switch ($d) {
default:
echo "期待周末";
break;
case 6:
echo "今天是星期六";
break;
case 0:
echo "今天是星期天";
}
运行实例 »点击 "运行实例" 按钮查看在线实例
注意:如果 default 不是 switch 块中的最后一个块,请记得用 break 语句结束 default 块。
如果你想让多个 case 使用相同的代码块,你可以这样指定 case:
每个代码块有多个 case:
$d = 3;
switch ($d) {
case 1:
case 2:
case 3:
case 4:
case 5:
echo "这周感觉好长!";
break;
case 6:
case 0:
echo "周末最棒了!";
break;
default:
echo "出错了。";
}
运行实例 »点击 "运行实例" 按钮查看在线实例
相关
视频
RELATED VIDEOS
科技资讯
1
2
3
4
5
6
7
8
9
精选课程
共5课时
17.2万人学习
共49课时
77万人学习
共29课时
61.7万人学习
共25课时
39.3万人学习
共43课时
70.9万人学习
共25课时
61.6万人学习
共22课时
23万人学习
共28课时
33.9万人学习
共89课时
125万人学习