Looping statements in PHP are used to execute the same block of code a specified number of times.
Looping
Very often when you write code, you want the same block of code to run a number of times. You can use looping statements in your code to perform this.
In PHP we have the following looping statements:
- while – loops through a block of code if and as long as a specified condition is true
- do…while – loops through a block of code once, and then repeats the loop as long as a special condition is true
- for – loops through a block of code a specified number of times
- foreach – loops through a block of code for each element in an array
The while Statement
The while statement will execute a block of code if and as long as a condition is true.
Syntax
while (condition)code to be executed; |
Example
The following example demonstrates a loop that will continue to run as long as the variable i is less than, or equal to 5. i will increase by 1 each time the loop runs:
<html> <body> <?php $i=1; while($i<=5) { echo “The number is ” . $i . “<br />”; $i++; } ?> </body> </html> |
The do…while Statement
The do…while statement will execute a block of code at least once – it then will repeat the loop as long as a condition is true.
Syntax
do{ code to be executed; }while (condition); |
Example
The following example will increment the value of i at least once, and it will continue incrementing the variable i as long as it has a value of less than 5:
<html> <body> <?php $i=0; do { $i++; echo “The number is ” . $i . “<br />”; }while ($i<5); ?> </body> </html> |
The for Statement
The for statement is the most advanced of the loops in PHP.
In it’s simplest form, the for statement is used when you know how many times you want to execute a statement or a list of statements.
Syntax
for (init; cond; incr) { code to be executed; } |
Parameters:
- init: Is mostly used to set a counter, but can be any code to be executed once at the beginning of the loop statement.
- cond: Is evaluated at beginning of each loop iteration. If the condition evaluates to TRUE, the loop continues and the code executes. If it evaluates to FALSE, the execution of the loop ends.
- incr: Is mostly used to increment a counter, but can be any code to be executed at the end of each loop.
Note: Each of the parameters can be empty or have multiple expressions separated by commas.
- cond: All expressions separated by a comma are evaluated but the result is taken from the last part. This parameter being empty means the loop should be run indefinitely. This is useful when using a conditional break statement inside the loop for ending the loop.
Example
The following example prints the text “Hello World!” five times:
<html> <body> <?php for ($i=1; $i<=5; $i++) { echo “Hello World!<br />”; } ?> </body> </html> |
The foreach Statement
The foreach statement is used to loop through arrays.
For every loop, the value of the current array element is assigned to $value (and the array pointer is moved by one) – so on the next loop, you’ll be looking at the next element.
Syntax
foreach (array as value) { code to be executed; } |
Example
The following example demonstrates a loop that will print the values of the given array:
<html> <body> <?php $arr=array(“one”, “two”, “three”); foreach ($arr as $value) { echo “Value: ” . $value . “<br />”; } ?> </body> </html> |