A for loop is the most complex loop structure in PHP. Its behavior is similar to that in C. The syntax of the for loop is: for (expr1; expr2; expr3) statement the first expression (expr1) is evaluated unconditionally once before the loop starts. Expr2 is evaluated before each cycle starts. If the value is TRUE, the loop continues and the nested loop statement is executed. If the value is for loop, it is the most complex loop structure in PHP. Its behavior is similar to that of C language. The syntax of the for loop is:
For (expr1; expr2; expr3)
Statement
The first expression (expr1) is unconditionally evaluated once before the loop starts.
Expr2 is evaluated before each cycle starts. If the value is TRUE, the loop continues and the nested loop statement is executed. If the value is FALSE, the loop is terminated.
Expr3 is evaluated (executed) after each loop ).
Each expression can be empty. If expr2 is null, it means an infinite loop (like C, PHP considers its value TRUE ). This may not be as useful as imagined, because it is often expected that the break statement is used to end the loop rather than the true value of the for expression.
Consider the following example where they all show numbers 1 to 10:
/* Example 1 */
For ($ I = 1; $ I <= 10; $ I ){
Echo $ I;
}
/* Example 2 */
For ($ I = 1; $ I ){
If ($ I> 10 ){
Break;
}
Echo $ I;
}
/* Example 3 */
$ I = 1;
For (;;){
If ($ I> 10 ){
Break;
}
Echo $ I;
$ I;
}
/* Example 4 */
For ($ I = 1; $ I <= 10; echo $ I, $ I );
?>
Of course, the first example looks the most normal (or the fourth one), but you may find it convenient to use an empty expression in a for loop in many cases.
PHP also supports the replacement syntax of the for loop with colons.
For (expr1; expr2; expr3 ):
Statement;
...
Endfor;
The for statement is the most basic statement in the loop control part of PHP (also multiple languages). The execution rules and basic usage of the for statement are not described here. The syntax of PHP is defined as follows:
For (expr1; expr2; expr3)
Statement
The following describes several useful variants of the for statement.
1. infinite loop
The first is an infinite loop (also known as an "endless loop "). The null expression is effective in syntax, so we can leave the three expressions of the for statement empty, which will produce continuous execution of the for nested statement.
For (;;){
// Place the statements that require continuous execution
}
?>
Although some tasks use infinite loops, most Program tasks, especially PHP fields, add conditions for terminating loops when using infinite loops.
For (;;){
// If it is 2199 AD, it will jump out of the loop
If (date ('Y') = '000000 '){
Break;
}
}
?>
2. use an empty expression
Next we will talk about the use of the null syntax in the initialization statement expr1. The most common function of leaving expr1 blank is to complete more complex initialization.
If (isset ($ I )){
Unset ($ I );
If (int) date ('') <2008 ){
$ I = 0;
} Else {
$ I = 1;
}
} Else {
$ I = 3;
}
For (; $ I <10; $ I ){
Echo $ I;
}
?>
In the same way, the iteration expression expr3 may also be left blank. you can also use this to write more complex iterations, such as calling different iterations based on different conditions.
The expr2 field in the for statement is an infinite loop mentioned above. of course, you can add more complex conditions to determine when to jump out of the loop, which is not repeated here.
3. multiple cycles
Using multiple loops to control multiple variables is also a feature that is often ignored in the for statement. In the following example, a double loop is usually used in a general task, and a triple or above loop is of little significance.
For ($ I = 0, $ j = 10; $ I <= 10; $ I, $ j --){
Echo "$ I $ j = 10 \ r \ n ";
}
?>
The above code will be output:
0 10 = 10
1 9 = 10
2 8 = 10
3 7 = 10
4 6 = 10
5 5 = 10
6 4 = 10
7 3 = 10
8 2 = 10
9 1 = 10
10 0 = 10
4. more complex expressions
If the three expressions of the for statement are more complex, they can be used to optimize the algorithm. You can even use a for statement without a loop body to complete some tasks. For example, calculation of accumulation or factorial:
// Calculates the accumulate result from 1-5, and returns the value to $ j.
For ($ I = 1, $ j = 0; $ I <= 5; $ j = $ I );
Echo $ j;
// Calculate the factorial result from 1-5. the bin value is $ j.
For ($ I = 1, $ j = 1; $ I <= 5; $ j * = $ I );
Echo $ j;
?>