Оператор continue в PHP
Если break полностью завершает цикл, то continue отказывается только от текущего прохода. PHP игнорирует оставшуюся часть тела цикла на этой итерации и переходит к следующей.
Его поддерживают все четыре вида циклов:
forwhiledo...whileforeach
continue в циклах for в PHP
В цикле for оператор continue перескакивает через оставшийся код в теле цикла. Счётчик при этом всё равно обновляется, и цикл продолжается дальше.
continue в цикле for
Выводятся все числа от 0 до 9, кроме 4, потому что echo пропускается, когда $x равно 4:
Вывод: PHP-скрипт
<?php
for ($x = 0; $x < 10; $x++) {
if ($x == 4) {
continue;
}
echo "Число: $x <br>";
}
?>
continue в цикле while в PHP
Цикл while обрабатывает continue так же: оставшаяся часть тела на этом проходе пропускается, и PHP возвращается к проверке условия.
continue в цикле while
На проходе, где $x равно 4, ничего не выводится, а затем цикл продолжается. Обратите внимание, что $x увеличивается перед continue: это ключевое слово сразу возвращает к условию, поэтому без этой строки $x осталось бы равным 4, и цикл никогда бы не закончился.
Вывод: PHP-скрипт
<?php
$x = 0;
while($x < 10) {
if ($x == 4) {
$x++;
continue;
}
echo "Число: $x <br>";
$x++;
}
?>
continue в цикле do while в PHP
В цикле do...while оператор continue сразу отправляет PHP к условию внизу, пропуская код, оставшийся в теле цикла.
continue в цикле do while
Когда $i равно 3, echo пропускается, поэтому вывод перескакивает с 2 на 4:
Вывод: PHP-скрипт
<?php
$i = 0;
do {
$i++;
if ($i == 3) continue;
echo $i;
} while ($i < 6);
?>
continue в цикле foreach в PHP
Используйте continue в цикле foreach, чтобы пропускать определённые элементы: PHP игнорирует оставшуюся часть тела для этого элемента и берёт следующий.
continue в цикле foreach
Выводятся все цвета, кроме «blue»:
Вывод: PHP-скрипт
<?php
$colors = array("red", "green", "blue", "yellow");
foreach ($colors as $value) {
if ($value == "blue") continue;
echo "$value<br>";
}
?>