Учебник по PHP 4 |
Сколько новых сайтов Вы делаете за год? результаты |
|
Операторы выбора/ Переключатель switchПереключатель switch является наиболее удобным средством для организации мультиветвления. Синтаксис переключателя таков: switch(expression) // переключающее выражение { case value1: // константное выражение 1 statements; // блок операторов break; case value2: // константное выражение 2 statements; break; default: statements; } Управляющая структура switch передает управление тому из помеченных case операторов, для которого значение константного выражения совпадает со значением переключающего выражения. Если значение переключающего выражения не совпадает ни с одним из константных выражений, то выполняется переход к оператору, помеченному меткой default. В каждом переключателе может быть не более одной метки default, однако она может отсутствовать вообще. Приведем пример программы с переключателем. В этой программе выводятся названия нечетных целых десятичных цифр от 1 до 9 не меньше заданной, в зависимости от числа, указанного в форме test.html. Форма test.html не отличается от той, что мы уже использовали: <form action = "http://localhost/PHP/chapt2/switch.php" method="get"> number: <input type="text" name="number"/><br> <input type="submit"/> </form> <? switch($number) { case 1: echo ("one "); case 2: case 3: echo ("free"); case 4: case 5: echo ("five"); case 6: case 7: echo ("seven"); case 8: case 9: echo ("nine"); break; default: echo ("This isn't number or number is > 9 or < 1"); } ?> Результат выполнения скрипта:
Так же, как и в случае условного оператора для переключателей допустимы любые степени вложенности, однако злоупотреблять этим без особой на то необходимости также не следует. Кроме уже сказанного о переключателе, приведенная программа демонстрирует действие оператора break, с помощью которого происходит выход из переключателя. Если поместить операторы break после вывода каждой из цифр, то в окне браузера мы увидим название только одной нечетной цифры. Как видим, после конструкции switch приведен составной оператор, однако это совершенно не обязательно – после switch может находиться любой оператор, помеченный служебным словом case. Напомним, что составной оператор, это заключенная в фигурные скобки последовательность операторов. Заметим также, что в PHP в качестве меток case могут использоваться не только литералы, но и сами метки могут быть переменными. В качестве меток case в PHP не могут выступать только массивы и объекты.
Если Вам нужна частная профессиональная консультация от авторов многих книг Кузнецова М.В. и Симдянова И.В., добро пожаловать в наш Консультационный Центр SoftTime. |