➤4.3 while迴圈
while迴圈
while迴圈是透過預先設定的條件來執行程式區塊,和do..while是先跑程式後用條件控制來看,基本上功能是相同的,差別在於執行條件的先後。
當在寫後端時,會時常依賴while、do...while、foreach迴圈來撈取SQL資料。我們可以while迴圈包if判斷式來執行,當然您也可以使用判斷式來包迴圈執行程式。
像是登入後台系統,外面是if來判斷帳號有無無登入或是已登入,如果登入了就可以繼續往下執行while、foreach迴圈等,沒有權限登入後台就跳回首頁。
棧長在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 ,
範例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." ";
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就跳出
?>
沒有留言:
張貼留言