В чем разница между break
и continue
в PHP?
break
завершает цикл полностью, continue
просто сочетать текущую итерацию и переходим к следующей итерации.
while ($foo) { <--------------------┐ continue; --- goes back here --┘ break; ----- jumps here ----┐ } | <--------------------┘
Это будет использоваться следующим образом:
while ($droid = searchDroids()) { if ($droid != $theDroidYoureLookingFor) { continue; // ..the search with the next droid } $foundDroidYoureLookingFor = true; break; // ..off the search }
break завершает цикл, в котором вы находитесь, продолжение начинается с следующего цикла цикла немедленно.
Пример:
$i = 10; while (--$i) { if ($i == 8) { continue; } if ($i == 5) { break; } echo $i . "\n"; }
выведет:
9 7 6
ЛОМАТЬ:
прерывает выполнение текущего, foreach, while, do-while или структуры коммутатора.
ПРОДОЛЖАТЬ:
continue используется в структурах цикла, чтобы пропустить оставшуюся часть текущей итерации цикла и продолжить выполнение при оценке условия, а затем в начале следующей итерации.
Поэтому в зависимости от вашей потребности вы можете сбросить текущую позицию в вашем коде на другой уровень текущей вложенности.
Кроме того, см. Здесь для художественной детализации Break vs Continue с рядом примеров
Для записи:
Обратите внимание, что в PHP оператор switch считается циклической структурой для продолжения .
Перерыв заканчивает текущую структуру цикла / управления и проскакивает до конца, независимо от того, сколько еще раз цикл повторил бы иначе.
Continue переходит к началу следующей итерации цикла.
«continue» используется в структурах цикла, чтобы пропустить остальную часть текущей итерации цикла и продолжить выполнение при оценке условия, а затем в начале следующей итерации.
«break» завершает выполнение текущего, foreach, while, do-while или структуры коммутатора.
break принимает необязательный числовой аргумент, который сообщает ему, сколько из вложенных структур размещения должно быть разбито.
Ознакомьтесь со следующими ссылками:
http://www.php.net/manual/en/control-structures.break.php
http://www.php.net/manual/en/control-structures.continue.php
Надеюсь, поможет..
break, используемый для выхода из инструкции цикла, но продолжайте просто останавливать скрипт в определенном состоянии, а затем продолжайте цикл, пока не достигнете конца.
for($i=0; $i<10; $i++){ if($i == 5){ echo "It reach five<br>"; continue; } echo $i . "<br>"; } echo "<hr>"; for($i=0; $i<10; $i++){ if($i == 5){ echo "It reach end<br>"; break; } echo $i . "<br>"; }
Надеюсь, это поможет вам;
break
остановит текущий цикл (или передаст целое число, чтобы сообщить ему, сколько циклов будет прерываться).
continue
остановит текущую итерацию и начнет следующую.
break
выйдет из цикла, а continue
начнет следующий цикл цикла немедленно.