(PHP 4, PHP 5, PHP 7)

break прерывает выполнение текущей структуры forforeachwhiledo-while или switch.

break принимает необязательный числовой аргумент, который сообщает ему выполнение какого количества вложенных структур необходимо прервать. Значение по умолчанию 1, только ближайшая структура будет прервана.

<?php
$arr = array('один', 'два', 'три', 'четыре', 'стоп', 'пять');
while (list(, $val) = each($arr)) {
    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;
    }
}
?>

 

История изменений break
Версия Описание
5.4.0 break 0; больше не допускается. В предыдущих версиях это воспринималось точно также как и break 1;.
5.4.0 Удалена возможность передачи переменных (например, $num = 2; break $num;) в виде числового аргумента.