PHP 8.0.6 Released!

break

(PHP 4, PHP 5, PHP 7, PHP 8)

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

break akzeptiert ein optionales numerisches Argument, das angibt, aus wie vielen 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.

add a note add a note

User Contributed Notes 2 notes

up
8
ei dot dwaps at gmail dot com
6 months ago
You can also use break with parentheses: break(1);

Note:
Using more nesting level leads to fatal error:

<?php
while (true) {
    foreach ([
1, 2, 3] as $value) {
      echo
'ok<br>';
      break
3; // Fatal error: Cannot 'break' 3 levels
   
}
    echo
'jamais exécuter';
    break;
  }
?>
up
-1
mparsa1372 at gmail dot com
2 months ago
The break statement can also be used to jump out of a loop.

This example jumps out of the loop when x is equal to 4:

<?php
for ($x = 0; $x < 10; $x++) {
  if (
$x == 4) {
    break;
  }
  echo
"The number is: $x <br>";
}
?>
To Top