我還有另外一種情況。我有保持值的變量(「每週」,「每月」,「每季度」,「年度」)和I具有保存的值從1到10PHP開關情況超過1值的情況下
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.
}
它不是另一個變量」很漂亮,因爲我的代碼有很多重複的東西。我想要的:
switch ($var2) {
case 1, 2:
$var3 = 'Weekly';
break;
case 3:
$var3 = 'Monthly';
break;
case 4, 5:
$var3 = 'Quarterly';
break;
}
我該如何在PHP中做到這一點?先謝謝你。對不起我的英語不好。
'($ var2 == 1 || $ var2 == 2)'可能無法正常工作,具體取決於'$ var2'是什麼。如果'$ var2 = 0',第一個案例將被執行。它也比簡單的'case'風格更加冗長。你也經常「打破」一點。 – deceze 2010-11-12 09:42:39
@deceze,同意,這就是爲什麼我先把另一個解決方案,它只是一個「複雜」布爾比較的例子 – Hannes 2010-11-12 09:51:06
**如果**你要使用這種風格,至少通過使條件工作正確正確的:'switch(true){case($ a || $ b):...}' – deceze 2010-11-12 09:52:48