PHP Tutorial
PHP Flow Control
PHP Functions
PHP String
PHP Array
PHP Date Time
PHP Object Oriented
Regular Expression
PHP Cookie & Session
PHP Error & Exception handling
MySQL in PHP
PHP File Directory
PHP Image Processing
Let's discuss how while
and do-while
loops work in PHP.
1. while
loop
The while
loop in PHP is used when you want to loop through a block of code an unknown number of times, for as long as a specified condition is true.
Here's the syntax for a while
loop:
while (condition) { // Code to be executed }
For example:
$count = 1; while ($count <= 5) { echo "The count is: " . $count . "<br>"; $count++; }
In this example, the loop will continue to print the value of $count
and increment it as long as $count
is less than or equal to 5.
2. do-while
loop
The do-while
loop is a variant of the while
loop. This loop will execute the block of code once, then it will repeat the loop as long as the specified condition is true.
Here's the syntax for a do-while
loop:
do { // Code to be executed } while (condition);
For example:
$count = 1; do { echo "The count is: " . $count . "<br>"; $count++; } while ($count <= 5);
In this example, the loop will first print "The count is: 1", and then it will increment $count
. After that, it checks the condition in the while
clause. The loop continues to print the value of $count
and increment it as long as $count
is less than or equal to 5.
Key Differences:
The main difference between while
and do-while
loops is when the condition for the loop is checked. In a while
loop, the condition is checked at the beginning, before any code in the loop is run. If the condition is false to begin with, the code in the loop will never be run.
In a do-while
loop, on the other hand, the condition is checked at the end, after the code in the loop has already run. This means that the code in a do-while
loop will always run at least once, even if the condition is false.
How to use while loops in PHP:
<?php $counter = 0; while ($counter < 5) { echo "Iteration: $counter<br>"; $counter++; }
Difference between while and do-while loops in PHP:
while
checks the condition before the loop starts.do-while
executes the loop at least once, then checks the condition.<?php // while loop $counter = 0; while ($counter > 0) { echo "This won't be executed"; } // do-while loop $counter = 0; do { echo "This will be executed once"; } while ($counter > 0);
Looping through arrays with while and do-while in PHP:
<?php $colors = ["red", "green", "blue"]; $index = 0; // while loop while ($index < count($colors)) { echo $colors[$index] . "<br>"; $index++; } // do-while loop $index = 0; do { echo $colors[$index] . "<br>"; $index++; } while ($index < count($colors));
PHP infinite while loop and breaking out of it:
<?php $counter = 0; while (true) { echo "Iteration: $counter<br>"; $counter++; if ($counter == 5) { break; // Break out of the infinite loop } }
Nested while loops in PHP:
<?php $outer = 1; while ($outer <= 3) { $inner = 1; while ($inner <= 3) { echo "Outer: $outer, Inner: $inner<br>"; $inner++; } $outer++; }
Using break and continue in while loops in PHP:
<?php $counter = 0; while ($counter < 5) { if ($counter == 2) { $counter++; continue; // Skip iteration when counter is 2 } echo "Iteration: $counter<br>"; if ($counter == 3) { break; // Exit loop when counter is 3 } $counter++; }
PHP while loop with multiple conditions:
<?php $counter = 0; $limit = 5; while ($counter < $limit && $counter < 3) { echo "Iteration: $counter<br>"; $counter++; }
Practical examples of while loops in PHP:
While loops are useful for iterating over arrays, processing data, and handling dynamic conditions based on runtime values.
PHP do-while loop vs. while loop:
<?php $counter = 0; // while loop while ($counter > 0) { echo "This won't be executed"; } // do-while loop do { echo "This will be executed once"; } while ($counter > 0);
Looping through database results with while in PHP:
<?php $result = mysqli_query($connection, "SELECT * FROM table"); while ($row = mysqli_fetch_assoc($result)) { echo $row['column'] . "<br>"; }
Generating dynamic HTML with while and do-while loops in PHP:
<?php $items = ["Item 1", "Item 2", "Item 3"]; // while loop $index = 0; while ($index < count($items)) { echo "<p>$items[$index]</p>"; $index++; } // do-while loop $index = 0; do { echo "<p>$items[$index]</p>"; $index++; } while ($index < count($items));