Главная > РНР: настольная книга программиста
НАПИШУ ВСЁ ЧТО ЗАДАЛИ
СЕКРЕТНЫЙ БОТ В ТЕЛЕГЕ
<< Предыдущий параграф Следующий параграф >>
Пред.
След.
Макеты страниц

Распознанный текст, спецсимволы и формулы могут содержать ошибки, поэтому с корректным вариантом рекомендуем ознакомиться на отсканированных изображениях учебника выше

Также, советуем воспользоваться поиском по сайту, мы уверены, что вы сможете найти больше информации по нужной Вам тематике

ДЛЯ СТУДЕНТОВ И ШКОЛЬНИКОВ ЕСТЬ
ZADANIA.TO

13.17. Операторы перехода в PHP

Операторы перехода (jump statements) осуществляют безусловную передачу управления в определенное место программы. Мы рассмотрим следующие операторы перехода:

• break,

• continue.

13.18. Оператор break

Вы уже встречали оператор break в параграфе, посвященном оператору switch (см. п. 13.11). Когда оператор break употребляется в последовательности операторов case, управление программой передается оператору, следующему за блоком switch. Оператор break прерывает исполнение ближайшего внешнего оператора while, do, for или switch. Управление передается следующему за прерванным

оператору. Например, использование оператора break в цикле while:

<?

$arr = array ('один', 'два', 'три', 'четыре', 'стоп', 'пять');

while (list (, $val) = each ($arr)) {

    if ($val == 'стоп') {

        break ; /* в этой строчке вместо break можно использовать break 1 */

}

echo "$val<br>n";

}

?>

Выполнение этой программы будет осуществляться до тех пор, пока значение переменной не станет равной стоп. После этого программа прерывается оператором break. В результате на экран браузера будет выведено:

один

два

три

четыре

Если бы оператора break не было, то к этим фразам бы добавилось еще две:

стоп

пять

При употреблении break можно также вместо него пользоваться таким синтаксическим обозначением break 1 — результат работы программы будет аналогичным.

Рассмотрим еще один пример:

<?

$i = 0;

while (++ $i) {

    switch($i) {

    case 5: echo "Программа прервалась на 5 <br>n";

            break 1;

    case 10: echo "Программа прервалась на 10, и произошла остановка выполнения. <br>n";

            break 2;

    default: break;

    }

}

?>

Переменная $i в рассмотренной программе будет постепенно увеличивать. Как только значение ее станет равным 5, она автоматически по ссылке попадет на оператор case 5:, далее произойдет выполнения выражение echo "Программа прервалась на 5
n", что приведет к выводу строчки "Программа прервалась на 5", хотя, именно в этот момент программа еще не завершилась (это произойдет, как только выполнится оператор break 1;). Но даже в этом случае произойдет выход только из конструкции switch, но не из цикла. Дальше прибавляется по единице к имеющейся пятерке. Как только значение переменной станет равно 10, выполнится оператор break 2, за счет чего произойдет выход из оператора switch и из самого цикла while. Выполнение программы прервется окончательно. В результате получится следующее (рис. 13.6):

Рис. 13.6. Результат выполнения скрипта

1
Оглавление
email@scask.ru