Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
php учебник_весь.doc
Скачиваний:
8
Добавлен:
21.09.2019
Размер:
2.06 Mб
Скачать

Операторы выбора/ Переключатель 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 не могут выступать только массивы и объекты.

Операторы цикла

Операторы цикла задают многократное исполнение операторов в теле цикла. В PHP определены 4 разных оператора цикла:

  • цикл с предусловием:

  • while(condition)

  • {

  • statements;

  • }

  • цикл с постусловием:

  • do

  • {

  • statements;

  • } while(condition);

  • итерационный цикл:

  • for(expression1;expression2;expression3)

  • {

  • statements;

  • }

  • итерационный цикл foreach:

  • foreach (array as [$key =>] $value)

  • {

  • statements;

  • }

Если 3 первых оператора цикла берут свое начало от С-подобных языков, то последний оператор позаимствован у языка Perl (кстати, цикл foreach мы разберем попозже – в главе 4, посвященной массивам).

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]