PHP – 迴圈型別



PHP 中的迴圈用於執行相同的程式碼塊指定次數。PHP 支援以下四種迴圈型別。

  • for − 迴圈執行程式碼塊指定的次數。

  • foreach − 迴圈遍歷陣列中的每個元素。

  • while − 如果並且只有當指定條件為真時,才迴圈執行程式碼塊。

  • do-while − 迴圈執行程式碼塊一次,然後只要特殊條件為真就重複迴圈。

此外,我們還將解釋如何在 PHP 中使用continuebreak 語句來控制迴圈的執行。

PHP for 迴圈

當您知道要執行語句或語句塊多少次時,可以使用 for 語句。

for loop in Php

語法

for (initialization; condition; increment){
   code to be executed;
}

初始化器用於設定迴圈迭代次數的計數器的起始值。此處可以為此目的宣告一個變數,並且傳統上將其命名為 $i。

示例

以下示例進行五次迭代,並在迴圈的每次傳遞中更改兩個變數的賦值值 -

<?php
   $a = 0;
   $b = 0;

   for( $i = 0; $i<5; $i++ ) {
      $a += 10;
      $b += 5;
   }

   echo ("At the end of the loop a = $a and b = $b" );
?>

它將產生以下輸出 -

At the end of the loop a = 50 and b = 25

PHP foreach 迴圈

foreach 語句用於迴圈遍歷陣列。對於每次傳遞,當前陣列元素的值都分配給 $value,並且陣列指標移動一個位置,在下一輪傳遞中將處理下一個元素。

語法

foreach (array as value) {
   code to be executed;
}

示例

嘗試以下示例以列出陣列的值。

<?php
   $array = array( 1, 2, 3, 4, 5);

   foreach( $array as $value ) {
      echo "Value is $value \n";
   }
?>

它將產生以下輸出 -

Value is 1
Value is 2
Value is 3
Value is 4
Value is 5

PHP while 迴圈

while 語句將在測試表達式為真的情況下執行程式碼塊。

如果測試表達式為真,則將執行程式碼塊。程式碼執行後,將再次評估測試表達式,並且迴圈將繼續,直到發現測試表達式為假。

for loop in PHP

語法

while (condition) {
   code to be executed;
}

示例

此示例在迴圈的每次迭代中遞減變數值,並且計數器遞增,直到它達到 10,此時評估為假,迴圈結束。

<?php
   $i = 0;
   $num = 50;

   while($i < 10) {
      $num--;
      $i++;
   }

   echo ("Loop stopped at i = $i and num = $num" );
?>

它將產生以下輸出 -

Loop stopped at i = 10 and num = 40 

PHP do-while 迴圈

do-while 語句將至少執行一次程式碼塊 - 然後只要條件為真就重複迴圈。

語法

do {
   code to be executed;
}
while (condition);

示例

以下示例將至少遞增一次 i 的值,並且只要 i 的值小於 10,它將繼續遞增變數 i -

<?php
   $i = 0;
   $num = 0;

   do {
      $i++;
   }

   while( $i < 10 );
   echo ("Loop stopped at i = $i" );
?>

它將產生以下輸出 -

Loop stopped at i = 10

PHP break 語句

PHP break 關鍵字用於過早終止迴圈的執行。

break 語句位於語句塊內。它讓您完全控制,並且無論何時您想要退出迴圈,都可以退出。退出迴圈後,將執行迴圈後的緊鄰語句。

PHP Break Statement

示例

在以下示例中,當計數器值達到 3 時,條件測試變為真,迴圈終止。

<?php
   $i = 0;

   while( $i < 10) {
      $i++;
      if( $i == 3 )break;
   }
   echo ("Loop stopped at i = $i" );
?>

它將產生以下輸出 -

Loop stopped at i = 3

PHP continue 語句

PHP continue 關鍵字用於停止迴圈的當前迭代,但它不會終止迴圈。

就像break 語句一樣,continue 語句位於包含迴圈執行的程式碼的語句塊內,前面是條件測試。對於遇到continue 語句的傳遞,跳過迴圈的其餘程式碼,並開始下一輪傳遞。

PHP Continue Statement

示例

在以下示例中,迴圈列印陣列的值,但對於條件變為真的值,它只是跳過程式碼並列印下一個值。

<?php
   $array = array( 1, 2, 3, 4, 5);

   foreach( $array as $value ) {
      if( $value == 3 )continue;
      echo "Value is $value \n";
   }
?>

它將產生以下輸出 -

Value is 1
Value is 2
Value is 4
Value is 5
廣告