I have another situation. I have a variable that holds the values ('Weekly', 'Monthly', 'Quarterly', 'Annual'), and I have another variable that holds the values from 1 to 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.
}
It isn't beautiful, because my code has a lot of duplicates. What I want:
switch ($var2) {
case 1, 2:
$var3 = 'Weekly';
break;
case 3:
$var3 = 'Monthly';
break;
case 4, 5:
$var3 = 'Quarterly';
break;
}
How can I do it in PHP? Thank you in advance. Sorry for my english.
Everything after the first matching case will be executed until a break statement is found. So it just falls through to the next case, which allows you to "group" cases.
the simplest and probably best way performance wise would be:
also, possibile for more complex situations:
in this scenario, $var2 must be set and can not be null or 0
Switch is also very handy for AB testing. Here the code for randomly testing 4 different versions of something: