Попробуйте использовать следующие примеры в этой статье: http://phpswitch.com/
Возможные случаи переключения:
(я). Простой оператор переключения
Оператор переключения удивителен и волшебен. Это часть языка, которая позволяет вам выбирать между различными вариантами значения и запускать разные фрагменты кода в зависимости от того, какое значение установлено.
Каждая возможная опция задается регистром в операторе switch.
Пример:
switch($bar)
{
case 4:
echo "This is not the number you're looking for.\n";
$foo = 92;
}
* * 1 022 (II).
Разграничение блоков кода
Главное предостережение переключателя заключается в том, что каждый случай перейдет к следующему, если вы не остановите его с перерывом. Если простой случай выше распространяется на случай 5:
Пример:
case 4:
echo "This is not the number you're looking for.\n";
$foo = 92;
break;
case 5:
echo "A copy of Ringworld is on its way to you!\n";
$foo = 34;
break;
* 1 035 * (III).
Использование Fallthrough для нескольких случаев
Поскольку коммутатор будет продолжать выполнение кода до тех пор, пока не обнаружит перерыв, достаточно легко принять концепцию «сквозного» и запустить один и тот же код для более чем одного случая:
Пример:
дело 2:
case 3:
case 4:
echo "This is not the number you're looking for.\n";
$foo = 92;
break;
case 5:
echo "A copy of Ringworld is on its way to you!\n";
$foo = 34;
break;
(IV). Расширенное переключение: случаи состояний
Переключатель PHP не просто позволяет вам включать значение определенной переменной: вы можете использовать любое выражение в качестве одного из случаев, если оно дает значение для случая использования. В качестве примера, вот простой валидатор, написанный с использованием switch:
Пример:
switch(true)
{
case (strlen($foo) > 30):
$error = "The value provided is too long.";
$valid = false;
break;
case (!preg_match('/^[A-Z0-9]+$/i', $foo)):
$error = "The value must be alphanumeric.";
$valid = false;
break;
default:
$valid = true;
break;
}
Я думаю, что это может помочь вам решить вашу проблему.