Ale*_*tau 45 php case switch-statement
我有另一种情况.我有一个包含值的变量('Weekly','Monthly','Quarterly','Annual'),我有另一个变量,它保存从1到10的值.
switch ($var2) {
case 1:
$var3 = 'Weekly';
break;
case 2:
$var3 = 'Weekly';
break;
case 3:
$var3 = 'Monthly';
break;
case 4:
$var3 = 'Quarterly';
break;
case 5:
$var3 = 'Quarterly';
break;
// etc.
}
Run Code Online (Sandbox Code Playgroud)
它不漂亮,因为我的代码有很多重复.我想要的是:
switch ($var2) {
case 1, 2:
$var3 = 'Weekly';
break;
case 3:
$var3 = 'Monthly';
break;
case 4, 5:
$var3 = 'Quarterly';
break;
}
Run Code Online (Sandbox Code Playgroud)
我怎么能在PHP中做到这一点?先感谢您.对不起我的英语不好.
Han*_*nes 105
表现最明智的最简单也可能是最好的方式:
switch ($var2) {
case 1:
case 2:
$var3 = 'Weekly';
break;
case 3:
$var3 = 'Monthly';
break;
case 4:
case 5:
$var3 = 'Quarterly';
break;
}
Run Code Online (Sandbox Code Playgroud)
也适用于更复杂的情况:
switch ($var2) {
case ($var2 == 1 || $var2 == 2):
$var3 = 'Weekly';
break;
case 3:
$var3 = 'Monthly';
break;
case ($var2 == 4 || $var2 == 5):
$var3 = 'Quarterly';
break;
}
Run Code Online (Sandbox Code Playgroud)
在这种情况下,$ var2必须设置,不能为null或0
dec*_*eze 10
switch ($var2) {
case 1 :
case 2 :
$var3 = 'Weekly';
break;
case 3 :
$var3 = 'Monthly';
break;
case 4 :
case 5 :
$var3 = 'Quarterly';
break;
}
Run Code Online (Sandbox Code Playgroud)
第一个匹配案例之后的所有内容都将被执行,直到找到break语句.所以它只是落到下一个案例,它允许你"分组"案件.
| 归档时间: |
|
| 查看次数: |
67211 次 |
| 最近记录: |