while

(PHP 4, PHP 5, PHP 7, PHP 8)

while loops are the simplest type of loop in PHP. They behave just like their C counterparts. The basic form of a while statement is:

while (expr)
    statement

The meaning of a while statement is simple. It tells PHP to execute the nested statement(s) repeatedly, as long as the while expression evaluates to true. The value of the expression is checked each time at the beginning of the loop, so even if this value changes during the execution of the nested statement(s), execution will not stop until the end of the iteration (each time PHP runs the statements in the loop is one iteration). If the while expression evaluates to false from the very beginning, the nested statement(s) won't even be run once.

Like with the if statement, you can group multiple statements within the same while loop by surrounding a group of statements with curly braces, or by using the alternate syntax:

while (expr):
    statement
    ...
endwhile;

The following examples are identical, and both print the numbers 1 through 10:

<?php
/* example 1 */

$i = 1;
while (
$i <= 10) {
echo
$i++; /* the printed value would be
$i before the increment
(post-increment) */
}

/* example 2 */

$i = 1;
while (
$i <= 10):
echo
$i;
$i++;
endwhile;
?>

add a note

User Contributed Notes 3 notes

up
-16
razvan_bc at yahoo dot com
1 year ago
assuming you want to have another way to archieve
<?php

for($i=10;$i>0;$i--){
echo
$i.'<br>';
}

?>

then yo have this:

<?php

$v
=10;
do{
echo
$v.'<br>';
}while(--
$v);

/*
while(--$v) : 10...1 , when $v==0 stops
*/

?>
up
-44
Dan Liebner
3 years ago
While loops don't require a code block (statement).

<?php

while( ++$i < 10 ); // look ma, no brackets!

echo $i; // 10

?>
up
-45
mparsa1372 at gmail dot com
3 years ago
The example below displays the numbers from 1 to 5:

<?php
$x
= 1;

while(
$x <= 5) {
echo
"The number is: $x <br>";
$x++;
}
?>

This example counts to 100 by tens:

<?php
$x
= 0;

while(
$x <= 100) {
echo
"The number is: $x <br>";
$x+=10;
}
?>
To Top