KT客棧

Web程式交流 & 聊幹畫 / 心情手札

【PHP】4 條件控制&迴圈-4.3 while迴圈

*PHP  4 條件控制&迴圈
4.3 while迴圈
while迴圈
while迴圈是透過預先設定的條件來執行程式區塊,和do..while是先跑程式後用條件控制來看,基本上功能是相同的,差別在於執行條件的先後。

當在寫後端時,會時常依賴while、do...while、foreach迴圈來撈取SQL資料。我們可以while迴圈包if判斷式來執行,當然您也可以使用判斷式來包迴圈執行程式。

像是登入後台系統,外面是if來判斷帳號有無無登入或是已登入,如果登入了就可以繼續往下執行while、foreach迴圈等,沒有權限登入後台就跳回首頁。

棧長在while迴圈這邊僅貼程式碼的圖片,棧友們可以動手敲鍵盤做看看。







do...while迴圈
在do..while迴圈是先執行程式,最後再依設定的條件做判斷執行也就是先執行後判斷。以下會秀出兩個範例來討論:

範例1.(if..else包do..while再包if)
# 初始值是30
# 用if判斷當值大於20就開始執行do...while,若小於20就跳至else
# 於do執行迴圈時遞增10,並echo秀出來
# 如果值大於等於100 以及小於等於180,echo秀出加上逗號
透過while做條件判斷,亦即迴圈增加至130就跳出迴圈
執行結果>40 50 60 70 80 90 100 ,110 ,120 ,130 ,

<?php
   $k=30;
   if ($k>20) {
      do {
        $k+=10; //遞增10
        echo $k."&nbsp;";
          if ($k >= 100 && $k <= 180) { //從40-180範圍,100至180間都加上逗號
          echo ",";
          }
      } while ($k<130);//最後作條件判斷-迴圈遞增到小於130就跳出
   }else {
      echo "通通都沒有";
   }
?>


範例2.(do..while包if)
# 初始值是10。
於do執行迴圈時遞增10,遞增後的值是20.30.40~~~~(略)
# if值是大於等於100,小於等於180(也就是從遞增的值取出100-180),就
   echo秀出來並加上逗號
# 透過while做條件判斷,亦即迴圈增加至130就跳出迴圈
執行結果>100,110,120,130,

<?php
  $k=10;
   do {
     $k+=10; //遞增10
       if ($k >= 100 && $k <= 180) { //從20-180範圍,取出100至180加上逗號
       echo $k.",";
       }
   } while ($k<130)//最後作條件判斷-迴圈遞增到小於130就跳出
?>






沒有留言:

張貼留言

@templatesyard