Распознанный текст, спецсимволы и формулы могут содержать ошибки, поэтому с корректным вариантом рекомендуем ознакомиться на отсканированных изображениях учебника выше
Также, советуем воспользоваться поиском по сайту, мы уверены, что вы сможете найти больше информации по нужной Вам тематике
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. Результат выполнения скрипта