- 了解 PHP 迴圈結構與使用方式
PHP 迴圈結構基本用法
- for 迴圈 :
- 用於可數的重複工作
- 語法格式 :
for (起始值;條件式;步進值){ 需要重複做的事; }
- 範例 : ex4_6.php
<?php // 從 1 加到 50 的整數和 // 以下方式只是為了說明 for 迴圈的使用方式,不是好的程式碼寫法!! $sum = 0; for ($i = 1; $i <= 50; i++){ $sum += $i; } echo "總合是: $sum"; ?>
- while 迴圈 :
- 用於有條件限制的重複工作
- 先判斷條件,成立後再執行工作!
- 語法格式 :
while ( 條件式 ){ 需要重複做的事; }
- 範例 : ex4_7.php
<?php $sum = 0; while ( $i <= 50 ){ $sum += $i; $i++; } ?>
- do … while 迴圈 :
- 用於有條件限制的重複工作
- 先工作,再進條件判斷,決定需不需要繼續執行!
- 語法格式 :
do { 需要重複做的事; } while (條件式);
- 範例 : ex4_8.php
<?php $sum = 0; $i = 1; do { $sum += $i; $i++; } while ($i <= 50); ?>
- 無窮迴圈 :
- 永不停止的重複執行
- 建議放入一個可中斷程式的判斷程式
- 語法格式 :
for (;;){ } while(true){ } do { } while (true);
- 範例 : ex4_9.php
<?php $sum = 0; $i = 0; while (true){ $i++; $sum += $i; if ( $sum >= 100) break; } echo "\$sum : $sum"; ?>
- 巢狀迴圈
- 迴圈內有迴圈,即為巢狀迴圈!
- 沒事請少用巢狀迴圈
- 語法格式 :
//以下僅表示雙層巢狀迴圈,可以再多幾層迴圈 for(起始值;條件式;步進值){ for(起始值;條件式;步進值){ 需要重複做的事; } } while(條件式){ while(條件式){ 需要重複做的事; } } do { do { 需要重複做的事; } while (條件式); }while (條件式);
- 範例 : ex4_10.php
<?php //九九乘法表 for ($i = 2; $i < 10; $i++){ for ($j = 1; $j < 10; $j++){ printf("%d*%d=%d \t",$i,$j,($i * $j)); } printf("\n"); } ?>
- break
- break 用法 : 跳出迴圈、switch 時使用!
- 語法格式 :
break; //跳出目前的迴圈 break 1; //跳出目前的一層迴圈 break 2; //跳出目前的二層迴圈
- 範例 : ex4_11.php
<?php while (true){ echo "這是第一層迴圈!
"; while (true){ echo "這是第二層迴圈!
"; break 2; } } echo "己跳出二層迴圈!"; ?>
- continue
- continue 用法 : 于迴圈中,略過這一次,執行下一次的工作!
- 範例 : ex4_12.php
<?php while($i <= 10){ if ( $i == 5) { echo "略過 \$i = $i
"; continue; } echo $i."
"; } ?>
本章練習:
- 寫一支程式判斷成績等級: