continue

(PHP 4, PHP5)

continue используется внутри циклических структур для пропуска оставшейся части текущей итерации цикла и, при соблюдении условий, начала следующей итерации.

Замечание: Заметим, что в PHP структура switch считается циклической, и внутри нее может использоваться continue.

continue принимает необязательный числовой аргумент, который указывает сколько итераций будет пропущено.

Замечание:

continue 0; и continue 1; есть одно и то же, что и continue;.

while (list($key, $value) = each($arr)) {
    if (!($key % 2)) { // пропуск нечетных чисел
        continue;
    }
    do_something_odd($value);
}
$i = 0;
while ($i++ < 5) {
    echo "Снаружи<br />\n";
    while (1) {
        echo "В середине<br />\n";
        while (1) {
            echo "Внутри<br />\n";
            continue 3;
        }
        echo "Это никогда не будет выведено.<br />\n";
    }
    echo "Это тоже.<br />\n";
}

Пропуск точки запятой после continue может привести к путанице. Пример как не надо делать.

for ($i = 0; $i < 5; ++$i) {
    if ($i == 2)
        continue
    print "$i\n";
}

Ожидается, что результат будет такой:

0
1
3
4

Но этот скрипт выведет следующее:

2

Потому что выражение continue print "$i\n"; воспринимается как единое выражение, и print() вызыватеся только тогда, когда выражение $i == 2 истинно. (Возвращаемое значение от print передается к continue как числовой аргумент.)




Смотрите также:
Описание на ru2.php.net
Описание на php.ru