break

(PHP 4, PHP 5, PHP 7)

break beendet die Ausführung der aktuellen for-, foreach-, while-, do-while- oder switch-Struktur.

break akzeptiert ein optionales numerisches Argument, das angibt, aus wievielen der es umschließenden verschachtelten Strukturen ausgebrochen werden soll. Der Standardwert ist 1; nur aus der unmittelbar umschließenden Verschachtelung wird ausgebrochen.

<?php
$arr 
= array('eins''zwei''drei''vier''stop''fünf');
foreach (
$arr as $val) {
    if (
$val == 'stop') {
        break;    
/* Sie könnten hier auch 'break 1;' schreiben. */
    
}
    echo 
"$val<br />\n";
}

/* Nutzung des optionalen Arguments. */

$i 0;
while (++
$i) {
    switch (
$i) {
        case 
5:
            echo 
"Bei 5<br />\n";
            break 
1;  /* Verlässt nur das switch. */
        
case 10:
            echo 
"Bei 10; brich ab<br />\n";
            break 
2;  /* Verlässt das switch und das while. */
        
default:
            break;
    }
}
?>

Changelog für break
Version Beschreibung
7.0.0 break außerhalb einer Schleife oder einer switch Kontrollstruktur wird nun zur Übersetzungszeit anstatt wie zuvor zur Laufzeit erkannt, und löst einen Fehler der Stufe E_COMPILE_ERROR aus.
5.4.0 break 0; ist nicht länger gültig. In früheren Versionen wurde es genauso interpretiert wie break 1;.
5.4.0 Die Möglichkeit eine Variable als numerisches Argument zu übergeben (z.B., $num = 2; break $num;) wurde entfernt.