Home > Backend Development > PHP Tutorial > Analyzing PHP's methods of jumping out of loops and introducing the differences between continue, break, and exit_PHP Tutorial

Analyzing PHP's methods of jumping out of loops and introducing the differences between continue, break, and exit_PHP Tutorial

WBOY
Release: 2016-07-21 15:01:52
Original
792 people have browsed it

The loop structures in PHP generally include for loops, while loops, do{} while loops and foreach loops. No matter which type of loop, there are basically several ways to break out of the loop in PHP:
Code:

Copy code The code is as follows:

$i = 1;
while (true) { // It seems that this loop will continue to execute
if ($i==2) {// 2 skips and does not display
$i++;
continue;
} else if ($i==5) {// But here $i=5 breaks out of the loop
break;
} else {
echo $i . '
';
}
$i++;
}
exit;
echo 'No output here';
?>

Result:
1
3
4
continue
continue is used in a loop structure to control the program to abandon the code after the continue statement of this loop and move on. Next cycle. continue itself does not jump out of the loop structure, it just gives up the loop this time. If continue is used in a non-loop structure (such as an if statement, a switch statement), the program will error.
For example, in the following PHP code snippet:
Copy the code The code is as follows:

for($i = 1;$i <= 100; $i++ ){
if($i % 3 == 0 || $i % 7 == 0){
continue;
}
& #160; else{
echo”$i n
”;
}
}
?>

The function of the PHP code snippet is to output those natural numbers within 100 that are neither divisible by 7 nor divisible by 3. In the loop, the if conditional statement is first used to determine those numbers that can be divisible, and then execute continue; statement and enter the next loop directly. The following output statement will not be executed.

break
break is used in the various loops and switch statements mentioned above. Its function is to jump out of the current grammatical structure and execute the following statements. The break statement can take a parameter n, indicating the number of levels to jump out of the loop. If you want to jump out of multiple loops, you can use n to indicate the number of levels to jump out of. If there is no parameter, the default is to jump out of the current loop.
Look at the following example of multiple loop nesting:
Copy the code The code is as follows:

for($i = 1;$i <= 10; $i++ ){
for($j = 1;$j <= 10;$j++){
$m = $i * $i + $j * $ j;
echo”$m n
”;
if($m < 90 || $m > 190) {
break 2;
}
}
}

Here we use break 2 to jump out of two loops. You can try it out and remove 2. The result will be completely different. If no parameters are used, only this loop will be jumped out, and the first level loop will continue to execute.

goto
goto is actually just an operator. Like other languages, the abuse of goto is not encouraged in PHP. Abuse of goto will lead to a serious decrease in the readability of the program. The function of goto is to jump the execution of the program from the current position to any other position. goto itself does not have the function of ending the loop, but its jump position allows it to be used as a way to jump out of the loop. However, PHP5.3 and above have stopped supporting goto, so you should try to avoid using goto.
The following is an example of using goto to jump out of a loop
Copy the code The code is as follows:

for($i = 1000;$i >= 1 ; $i– ){
if( sqrt($i) <= 29){
goto a;
}
echo “$i”;
}
a:
echo” this is the end”;

The example uses goto to break out of the loop. This example is used to detect 1000 Within, the square root of those numbers is greater than 29.

exit
exit is used to end program execution. It can be used anywhere and has no meaning of jumping out of the loop. exit can take one parameter. If the parameter is a string, PHP will output the string directly. If the parameter is an integer (range is 0-254), that parameter will be used as the end status.
Copy code The code is as follows:

for($i = 1000;$i > = 1 ; $i– ){
if( sqrt($i) >= 29){
echo”$i n
”;
}
else{
exit;
}
}
echo "This line will not be output";
?>

In the above example, the execution of the code ends directly in the loop, which will cause the following code to not be executed. If it is in a php web page, even the html code after exit will not be executed. output.

return
return statement is used to end a piece of code and return a parameter. It can be called from a function, or from a file included in an include() or require() statement, or it can be called from the main program. If it is called from a function, the program will end immediately and return the parameters. , if it is called from a file included in the include() or require() statement, program execution will immediately return to the program that called the file, and the return value will be used as the return value of include() or require(). And if it is called in the main program, then the main program will stop execution immediately
Copy the code The code is as follows:

< ;?php
for($i = 1000;$i >= 1 ; $i– ){
if( sqrt($i) >= 29){
echo”$i n< br/>";
}
else{
return;
}
}
echo "This line will not be output";
?>

The example here has the same effect as using exit above.
At the end of the loop condition, it will naturally jump out
This is of course the best to understand. When the loop meets the critical condition of the loop, it will exit by itself.
The above is a brief summary of several ways to break out of loops in PHP.

www.bkjia.comtruehttp: //www.bkjia.com/PHPjc/327957.htmlTechArticleThe loop structures in PHP generally include for loop, while loop, do{} while loop and foreach loop. No matter what kind of loop, there are roughly the following ways to break out of the loop in PHP: Code...
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template