PHP break statement breaks the execution of the current for, while, do-while, switch, and for-each loop. If you use break inside inner loop, it breaks the execution of inner loop only.
The break keyword immediately ends the execution of the loop or switch structure. It breaks the current flow of the program at the specified condition and program control resumes at the next statements outside the loop.
The break statement can be used in all types of loops such as while, do-while, for, foreach loop, and also with switch case.
jump statement; break;
Let's see a simple example to break the execution of for loop if value of i is equal to 5.
<?php for($i=1;$i<=10;$i++){ echo "$i <br/>"; if($i==5){ break; } } ?>
Output:
The PHP break statement breaks the execution of inner loop only.
<?php for($i=1;$i<=3;$i++){ for($j=1;$j<=3;$j++){ echo "$i $j<br/>"; if($i==2 && $j==2){ break; } } } ?>
Output:
The PHP break statement breaks the flow of switch case also.
<?php $num=200; switch($num){ case 100: echo("number is equals to 100"); break; case 200: echo("number is equal to 200"); break; case 50: echo("number is equal to 300"); break; default: echo("number is not equal to 100, 200 or 500"); } ?>
Output:
<?php //declare an array of string $number = array ("One", "Two", "Three", "Stop", "Four"); foreach ($number as $element) { if ($element == "Stop") { break; } echo "$element </br>"; } ?>
Output:
You can see in the above output, after getting the specified condition true, break statement immediately ends the loop and control is came out from the loop.
It is not essential to break out of all cases of a switch statement. But if you want that only one case to be executed, you have to use break statement.
<?php $car = 'Mercedes Benz'; switch ($car) { default: echo '$car is not Mercedes Benz<br>'; case 'Orange': echo '$car is Mercedes Benz'; } ?>
Output:
The break accepts an optional numeric argument, which describes how many nested structures it will exit. The default value is 1, which immediately exits from the enclosing structure.
<?php $i = 0; while (++$i) { switch ($i) { case 5: echo "At matched condition i = 5<br />\n"; break 1; // Exit only from the switch. case 10: echo "At matched condition i = 10; quitting<br />\n"; break 2; // Exit from the switch and the while. default: break; } }?>
Output: