2.6 KiB
		
	
	
	
	
	
	
	
			
		
		
	
	
			2.6 KiB
		
	
	
	
	
	
	
	
title
| title | 
|---|
| Loops | 
PHP Loops
When you need to repeat a task multiple times, you can use a loop instead of adding the same code over and over again. PHP has the following loop statements :
- for - loop through a block of code with specific number of times.
- while - loop through a block of code if condition is true.
- do...while - loop through a block of code one and continue loop if condition is true.
- foreach - loop through a block of code for each value within an array.
Using a break within the loop can stop the loop execution.
For loop
Loop through a block of code with specific number of times.
Syntax
for (init counter; condition; counter increment or decrement)
{
    // Code to be executed
}
Example
<?php
for($index = 0; $index < 5; $index ++)
{
    echo "Current loop counter ".$index.".\n";
}
?>
Output
> Current loop counter 0.
> Current loop counter 1.
> Current loop counter 2.
> Current loop counter 3.
> Current loop counter 4.
While loop
Loop through a block of code if condition is true.
Syntax
while (condition)
{
    // Code to be executed
}
Example
<?php
$index = 10;
while ($index >= 0)
{
    echo "The index is ".$index.".\n";
    $index--;
}
?>
Output
> The index is 10.
> The index is 9.
> The index is 8.
> The index is 7.
> The index is 6.
> The index is 5.
> The index is 4.
> The index is 3.
> The index is 2.
> The index is 1.
> The index is 0.
Do...While loop
Loop through a block of code once and continue to loop if the condition is true.
Syntax
do
{
    // Code to be executed
}
while (condition);
Example
<?php
$index = 3;
do
{
    // execute this at least 1 time
    echo "Index: ".$index.".\n"; 
    $index --;
}
while ($index > 0);
?>
Output
> Index: 3.
> Index: 2.
> Index: 1.
Foreach loop
Loop through a block of code for each value within an array.
Syntax
foreach ($array as $value)
{
    // Code to be executed
}
Example
<?php
$array = ["Ali", "Ah Kao", "Muthu", "Gwen", "Lucida", "Cecily", "Arthur", "Flora"];
foreach ($array as $name)
{
    echo "Hi, my name is ".$name.".\n"; 
    
    if ($name == "Cecily")
    {
        echo "\"Hello, ".$name."!\"";
        
        // stop the loop if name is Cecily
        break;
    }
}
?>
Output
> Hi, my name is Ali.
> Hi, my name is Ah Kao.
> Hi, my name is Muthu.
> Hi, my name is Gwen.
> Hi, my name is Lucida.
> Hi, my name is Cecily.
> "Hello, Cecily!"