168 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
		
		
			
		
	
	
			168 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
| 
								 | 
							
								---
							 | 
						||
| 
								 | 
							
								title: Loop
							 | 
						||
| 
								 | 
							
								---
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# PHP Loop
							 | 
						||
| 
								 | 
							
								When you need to repeat same task for many times, you can use loop instead of keep adding same code over and over again.
							 | 
						||
| 
								 | 
							
								In PHP have 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
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								<?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
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								<?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 one and continue loop if condition is true.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								## Syntax
							 | 
						||
| 
								 | 
							
								```
							 | 
						||
| 
								 | 
							
								do
							 | 
						||
| 
								 | 
							
								{
							 | 
						||
| 
								 | 
							
								    // Code to be executed
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								while (condition);
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								```
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								## Example
							 | 
						||
| 
								 | 
							
								```php
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								<?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
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								<?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!"
							 | 
						||
| 
								 | 
							
								```
							 |