(краткое содержание)
Инструкция break
Часто бывает так, что в процессе выполнения цикла нет смысла проходить его
полностью и в какой-то момент, при выполнении определенных условий, прервать
его. Для таких целей существует инструкция break(), прерывающая выполнение
циклических конструкций.
Внутри инструкции имеется числовой параметр, который по умолчанию
выставлен на 1: break(1), что означает прерывание цикла, в который вложена
инструкция. Но, порой используются целые комплексы вложенных циклов:
for(a) {
for(b) {
for(c) {
инструкции_цикла;
break();
}
}
}
В таких ситуациях инструкция break выйдет только из цикла for(c), но не из
всего комплекса. Таким образом, число в скобках задает количество циклов или
вышестоящих функций, из которых необходимо выйти при выполнении условия,
стоящего перед break.
Рассмотрим действие инструкции break() на примере листинга 16.1.
Листинг 16.1. Пример действия инструкции break().
//Открываем новый цикл, где условием выхода из цикла будет достижение счетчиком
$i максимальной длины массива при помощи стандартной функции count(), считающей
количество элементов в массиве
for($i = 0; $i < count($array); $i++){
//Аналогично первому циклу, создаем цикл для прохождения вложенных
массивов
for($j = 0; $j < count($array[$i]); $j++){
//Ставим условие, если элемент массива равен 0, то выходим из всех
циклов
if($array[$i][$j] == 0) break(2);
1
Лекции курса PHP7 + MySQL с нуля
(краткое содержание)
}
}
2
Лекции курса PHP7 + MySQL с нуля
(краткое содержание)
Инструкция continue
Аналогично инструкции break, инструкция continue работает внутри циклов. В
отличие от инструкции break, инструкция continue дает команду на продолжение
выполнения инструкций внутри цикла и позволяет существенно улучшить
читаемость кода. Также, как и break, имеет вложенный параметр, обозначающий
переход к нужному циклу.
Рассмотрим условный пример, когда есть двумерный массив со случайными
числами от 10 до 40. При этом необходимо выполнить условие – если элемент
массива с вложенным индексом [][2] больше 25, то необходимо прекратить проход
по циклу, но если элемент массива с таким индексом меньше 25, то перейти к
следующей итерации.
Листинг 16.2. Пример взаимодействия инструкций continue и break