(PHP 4, PHP 5, PHP 7)
break прерывает выполнение текущей структуры for, foreach, while, do-while или switch.
break принимает необязательный числовой аргумент, который сообщает ему выполнение какого количества вложенных структур необходимо прервать. Значение по умолчанию 1, только ближайшая структура будет прервана.
<?php
$arr = array('один', 'два', 'три', 'четыре', 'стоп', 'пять');
foreach ($arr as $val) {
if ($val == 'стоп') {
break; /* Тут можно было написать 'break 1;'. */
}
echo "$val<br />\n";
}
/* Использование дополнительного аргумента. */
$i = 0;
while (++$i) {
switch ($i) {
case 5:
echo "Итерация 5<br />\n";
break 1; /* Выйти только из конструкции switch. */
case 10:
echo "Итерация 10; выходим<br />\n";
break 2; /* Выходим из конструкции switch и из цикла while. */
default:
break;
}
}
?>
Версия | Описание |
---|---|
7.0.0 |
Операторы break и continue вне цикла
или управляющей структуры switch теперь обрабатываются
во время компиляции, а не во время выполнения, как это было ранее, поэтому
выдают ошибки уровня E_COMPILE_ERROR .
|
5.4.0 | break 0; больше не допускается. В предыдущих версиях это воспринималось точно также как и break 1;. |
5.4.0 | Удалена возможность передачи переменных (например, $num = 2; break $num;) в виде числового аргумента. |