Главная » 2015 » Ноябрь » 21 » Урок 8. Условный переключатель switch в PHP
21:45
Урок 8. Условный переключатель switch в PHP

Условный переключатель switch

В предыдущем уроке мы рассмотрели условный оператор if...else, теперь мы рассмотрим более сложный оператор switch, который во многих случаях бывает использовать намного удобнее.

Начнем изучение переключателя switch с синтаксиса:

<?php switch (peremennaya) //в скобках указывается переменная { case znachenie1: // значение переменной ... операторы // если переменная равна znachenie1 ... break; case znachenie2: ... операторы // если переменная равна znachenie2 ... break; ... default: ... операторы // если переменная не равно ни одному из значений ... } ?>

Поясним описанную выше конструкцию.

  • В peremennaya указывается та переменная, которая участвует в сравнение.
  • В znachenie должно указываться какое-то значение. Если peremennaya будет равняться этому значению, то будут выполнены операторы стоящие после двоеточия. После операторов нужно ставить break; (хотя это и не обязательно), иначе операторы будут выполняться и из других case (до ближайшего брэйка).
  • default - не обязательный оператор. Он выполняется в случае если ни одно из значений, стоящих в case не подошло.

Приведем пример на PHP:

<?php $num = 10; switch ($num) { case 1: echo "переменная равна 1"; break; case 5: echo "переменная равна 5"; break; case 10: echo "переменная равна 10"; break; case 15: echo "переменная равна 15"; break; default: echo "переменная $num не равна 1, 5, 10 или 15"; } ?>

Результатом данного примера будет: "переменная равна 10". Теперь посмотрите, чтобы было если бы мы не писали break; после каждого case:

<?php $num = 10; switch ($num) { case 1: echo " переменная равна 1"; case 5: echo " переменная равна 5"; case 10: echo " переменная равна 10"; case 15: echo " переменная равна 15"; default: echo " переменная $num не равна 1, 5, 10 или 15"; } ?>

В данном случае результат будет: "переменная равна 10 переменная равна 15 переменная $num не равна 1, 5, 10 или 15 ". Такой результат был бы, поскольку операторы начинают выполняться до ближайшего break;.

Следующий урок Операторы цикла (while, do..while, for)

Категория: Все о сайтах | Просмотров: 268 |
Всего комментариев: 0
avatar