Home > Backend Development > PHP Problem > There are several ways to break out of loops in php

There are several ways to break out of loops in php

爱喝马黛茶的安东尼
Release: 2023-02-23 13:32:01
Original
6202 people have browsed it

There are several ways to break out of loops in php

1. The function of the return statement

(1) return exits from the current method, returns to the statement of the called method, and continues execution.

(2) return returns a value to the statement that calls the method. The data type of the return value must be consistent with the type of the return value in the method declaration.

(3) Return can also be followed by no parameters. Without parameters, it returns empty. In fact, the main purpose is to interrupt the execution of the function and return to the calling function.

2. The role of the break statement

(1) break is in the loop body, forcibly ending the execution of the loop, that is, ending the entire loop process. It no longer determines whether the conditions for executing the loop are established, but directly turns to statement below the loop statement.

(2) When break appears in the switch statement body in the loop body, its function is just to jump out of the switch statement body.

3. The function of the continue statement

Terminates the execution of this loop, that is, skips the unexecuted statements after the continue statement in the current loop, and then judges the next loop condition.

4. The role of the exit function

exit exits all scripts and is a function.

Related recommendations: "PHP Introductory Tutorial"

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

The code is as follows:

<?php
$i = 1;
while (true) { // 这里看上去这个循环会一直执行
    if ($i==2) {// 2跳过不显示
        $i++;
        continue;
    } else if ($i==5) {// 但到这里$i=5就跳出循循环了
        break;
    } else {
        echo $i . &#39;<br>&#39;;
    }
    $i++;
}
exit;
echo &#39;这里不输出&#39;;
?>
Copy after login

Result:

1
3
4
Copy after login

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 to the next loop. 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:

The code is as follows:

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

The function of the PHP code snippet is to output within 100, which cannot be For those natural numbers that are divisible by 7 but not divisible by 3, the if conditional statement is first used in the loop to determine those numbers that can be divisible, and then the continue; statement is executed to directly enter the next loop. 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, which represents the number of levels to jump out of the loop. If you want to jump out of multiple loops, you can use n to represent 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:

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<br/>”;
if($m < 90 || $m > 190) {
break 2;
}
}
}
Copy after login

break 2 is used here to jump out of the double loop, you can try it out , remove 2, and the results obtained are 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 serious program readability decline. 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 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 the loop.

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”;
Copy after login

In the example, goto is used to jump out of the loop. This example is used to detect Within 1000, 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 directly output the string. If the parameter is an integer (range is 0-254), that parameter will be used as the end status.

The code is as follows:

<?php
for($i = 1000;$i >= 1 ; $i– ){
if( sqrt($i) >= 29){
echo”$i \n<br/>”;
}
else{
exit;
}
}
echo”本行将不会被输出”;
?>
Copy after login

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

return

The 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, the main program will stop execution immediately.

The code is as follows:

<?php
for($i = 1000;$i >= 1 ; $i– ){
if( sqrt($i) >= 29){
echo”$i \n<br/>”;
}
else{
return;
}
}
echo”本行将不会被输出”;
?>
Copy after login

The above is the detailed content of There are several ways to break out of loops in php. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
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