continue

 

Іноді потрібно не повністю припинити роботу циклу, а тільки почати його нову ітерацію. Оператор continue дозволяє пропустити подальші інструкції з блоку_виконання будь-якого циклу і продовжити виконання з нового кола. continue можна використовувати з числовим аргументом, який вказує, скільки ітерацій циклу повинні завершити роботу.

Замінимо в прикладі попереднього параграфа оператор break на continue. Крім того, обмежимо кількість кроків циклу трьома.

<? Php 
$i = 1; 
while ($i <= 4) { 
$n = rand (1,10); 
// Генеруємо довільне число 
// Від 1 до 10 
echo "$i: $n"; 
// Виводимо номер ітерації і 
// Згенероване число 
if ($ n == 5) { 
echo "Нова ітерація <br>"; 
continue; 

/* Якщо було створене число 5, 
то починаємо нову ітерацію циклу, 
$і не збільшується */ 
} 
echo "Цикл працює <br>"; 
$і+ +; 
} 
$і--; 
echo "<br> Число ітерацій циклу $ i";
 
?>

Результатом роботи цього скрипта буде 
1:10 Цикл працює 
2:5 Нова ітерація 
2:1 Цикл працює 
3:1 Цикл працює 
Число ітерацій циклу 4

Зауважимо, що після виконання оператора continue робота циклу не закінчується. У прикладі лічильник циклу не змінюється в разі отримання числа 5, оскільки він перебуває після оператора continue. Фактично за допомогою continue ми намагаємося уникнути ситуації, коли буде створене число 5. Тому можна було просто написати, замінивши оператор continue на перевірку істинності висловлювання:

<? Php 
$I = 1; 
while ($I <4) { 
$N = rand (1,10); 
// Генеруємо довільне число 
// Від 1 до 10 
if ($N! == 5) { 
echo "$ i: $ n <br>"; 
// Виводимо номер ітерації 
// І згенероване число 
$I + +; 
} 
} 
?>

У PHP існує одна особливість використання оператора continue - в конструкціях switch він працює так само, як і break. Якщо switch знаходиться всередині циклу й треба почати нову ітерацію циклу, слід використовувати continue 2.