PHP оператор switch
Оператор switch похож на серии операторов IF с одинаковым условием. Чаще всего он используется в том случае, когда использовать конструкцию if-else нецелесообразно. Он сравнивает значение условного выражения с несколькими значениями. В качестве выражения обычно используется переменная, в зависимости от значения которой должен быть исполнен тот или иной блок кода. Для сравнения в switch используется оператор равенства (==).
Оператор выбора switch имеет следующий формат:
| 1 2 3 4 5 6 7 8 9 10 11 | switch (<Переменная или выражение>) {     case <Значение 1>:       <Выражение 1>;     break;       case <Значение 2>:       <Выражение 2>;      break;  …        default:        <Выражение>;  }  | 
Оператор switch берет значение, возвращаемое условным выражением, и начинает сравнивать его со всеми значениями, стоящими рядом с ключевым словом case (метка), по порядку. Как только совпадение обнаружено, выполняется соответствующий блок кода. Если ни одно из значений не описано в блоках case, то выполняется блок default. Оператор break позволяет досрочно выйти из оператора выбора switch. Если не указать оператор break в конце блока case, то будет выполняться следующий блок case вне зависимости от указанного значения.
Рассмотрим следующий пример:
| 1 2 3 4 5 6 7 8 9 10 11 12 13 | switch ($a) { case 0:     echo "a=0<br>";     break; case 1:     echo "a=1<br>";     break; case 2:     echo "a=2<br>";     break; default:     echo "переменная с таким значением не найдена"; } | 
Для переменной $a оператор switch ищет значения в каждом case, и если не находит, то срабатывает блок default. Такую конструкцию можно создать и с помощью условия if-else, но выглядеть это будет менее изящно.
 
                     
                     
                    