наверх

PHP оператор switch

Оператор switch похож на серии операторов IF с одинаковым условием. Чаще всего он используется в том случае, когда использовать конструкцию if-else нецелесообразно. Он сравнивает значение условного выражения с несколькими значениями. В качестве выражения обычно используется переменная, в зависимости от значения которой должен быть исполнен тот или иной блок кода. Для сравнения в switch используется оператор равенства (==).

Оператор выбора switch имеет следующий формат:

Оператор switch берет значение, возвращаемое условным выражением, и начинает сравнивать его со всеми значениями, стоящими рядом с ключевым словом case (метка), по порядку. Как только совпадение обнаружено, выполняется соответствующий блок кода. Если ни одно из значений не описано в блоках case, то выполняется блок default. Оператор break позволяет досрочно выйти из оператора выбора switch. Если не указать оператор break в конце блока case, то будет выполняться следующий блок case вне зависимости от указанного значения.

Рассмотрим следующий пример:

Для переменной $a оператор switch ищет значения в каждом case, и если не находит, то срабатывает блок default. Такую конструкцию можно создать и с помощью условия if-else, но выглядеть это будет менее изящно.