不曉得要跑幾圈的迴圈最適合用while迴圈
while (條件){ 敘述句 }
1. for迴圈適合用在已經知道要跑幾圈的情況。
for(expr1 ; expr2 ; expr3){ 敘述句… }
2. 在for( )裡面分別有三個部份,expr1 代表初始值, expr2 代表迴圈測試條件,條件若測試成立,迴圈繼續;條件測試失敗,迴圈停止,expr3 是條件成立後累進次數,"敘述句"代表每次繞一圈後所要進行的動作。
3. 假設,我們要列印出1到10的數字,那麼,我們可以這麼寫:
for($i=1;$i<=10;$i++){ echo $i; }
4. 整個執行流程,用文字來表示便是如下的5個步驟,您可以在腦海中試著運作一遍看看:
【步驟1】進入for迴圈,執行expr1,設定初始值,由於要列印1到10,所以我們設定變數 $i 的初始值是1。
【步驟2】進入expr2,也就是進入條件測試 $i<=10,若$i確實小於或等於10,則進行步驟3,若條件測試失敗($i>10時)則跳到步驟5。
【步驟3】執行{}中的敘述句「echo $i ;」,也就是印出 $i 的意思,執行完後,跳到步驟4。
【步驟4】執行expr3,也就是$i++,$i++的意思就是變數$i的值+1的意思!也就是變數$i的值從1變成2,接下來跳回步驟2。
【步驟5】結束迴圈
5. 上面的例子,您高興的話,這樣寫也行:
$i=1; for(;$i<=10;$i++){ echo $i; }
6. 或是這樣寫也行:
$i=1; for(;$i<=10;){ echo $i; $i++; }
7. 基本上,只要 for 迴圈做的到的動作,while迴圈也應該做得到。
1. foreach迴圈適合用在陣列上
foreach($陣列 as $值) { 敘述句 } //例如: $stud[1] = '張三'; $stud[2] = '李四'; $stud[3] = '王五'; foreach($stud as $name) { echo "<div>學生 {$name}</div>"; }
2. 也可以同時取出索引和值
foreach($陣列 as $索引=>$值) { 敘述句 } //例如: $stud[1] = '張三'; $stud[2] = '李四'; $stud[3] = '王五'; foreach($stud as $num => $name) { echo "<div>學生 {$name} 的座號是 {$num}</div>"; }
1. break 和 continue都是在迴圈裡使用的語法(break還可以用在switch中),一個是用來中斷迴圈,一個則是用來略過迴圈。