PHP教學-迴圈
迴圈(loop)是一種用來反覆執行某工作的工具,例如:輸出1~100的數字。
PHP程式內建的迴圈有:
while
do…while
for
foreach
等。以下逐一說明。
while
do…while
for
foreach
等。以下逐一說明。
《while迴圈》
while迴圈的標準格式如下:
while(條件){
子句;
}
子句;
}
在
程式執行通過while時,如果條件不成立,會直接略過while迴圈。當while條件成立時,迴圈會一直重複執行下去,永不停止,如果執行時間超過
PHP內定的時間上限,程式會因為超時而出錯。因此,在設定開始條件時,也要同時設定停止的條件。既然條件成立才會執行迴圈,要能停止迴圈的辦法就是在子
句中變動條件,使條件不成立。
<?php $a=1; while($a<=10){ echo $a."<br>"; $a++; //$a=$a+1;的縮寫 } ?>
說明:開始時變數$a=1,所以迴圈的開始條件($a<=10)成立。而迴圈每執行一次,$a的內容會加1,當迴圈執行完第10次時($a=11),迴圈的執行條件就不成立了。
《do…while迴圈》
do…while迴圈與while迴圈很像,唯一不同的是do…while迴圈是在每一次執行完迴圈時才去判斷條件是否成立,所以就算條件不成立,迴圈也會被執行一次。
標準語法如下:
do{
子句;
}while(條件);
子句;
}while(條件);
範例:
<?php do{ $a++; echo $a."<br>"; }while($a<10); ?>
《for迴圈》
for迴圈比while迴圈複雜,在條件的部分有三個參數,分別是開始變數、執行條件、變動條件。語法如下:
for(開始變數;執行條件;變動條件){
echo $c."<br>";
}
echo $c."<br>";
}
語法說明:
一、開始變數:只有在執行第1次迴圈時被認可,執行第2次迴圈時開始變數就會被忽略;
二、執行條件:只有在執行條件成立時,for迴圈才能被執行;
三、變動條件:與while迴圈一樣,執行條件如果一直不變,迴圈將永不停止,結果會因為逾時而出錯,所以迴圈必需有變動條件。
一、開始變數:只有在執行第1次迴圈時被認可,執行第2次迴圈時開始變數就會被忽略;
二、執行條件:只有在執行條件成立時,for迴圈才能被執行;
三、變動條件:與while迴圈一樣,執行條件如果一直不變,迴圈將永不停止,結果會因為逾時而出錯,所以迴圈必需有變動條件。
範例:
<?php for($c=1;$c<=10;$c++){ echo $c."<br>"; } ?>
範例說明:啟始時(第行第1次迴圈),變數$c=1;因為變動條件是$c++,變數$c每執行1圈自動加1,所以在執行第2次迴圈時$c=2;迴圈執行至第11次時,$c=11執行條件($c<=10)不成立,所以迴圈停止。
跳出迴圈
某甲在數鈔票,某甲的數鈔票行為就像迴圈,除非鈔票數完,否則不會停止。如果要讓某甲停止數鈔票,則要加入中斷的條件,例如:某甲忽然非常想上廁所或者某甲手邊的電話鈴聲響起。在PHP程式中,有這種中斷迴圈的語法:break。
《break》
break是為迴圈中的指令,在迴圈執行的過程中,如果遇到break會跳出迴圈。
<?php $a=1; while($a>0){ echo $a."<br>"; $a++; //$a=$a+1;的縮寫,while每執行一圈$a就加1 if($a>10) break; //跳出迴圈 } ?>
說明:範例中,while迴圈的條件永遠成立($a>0)。變數$a又一直往上加1,直到$a大於10時,迴圈中的if運算式的條件成立($a>10),於是執行if運算式的子句break,跳出迴圈(迴圈停止)。
留言
張貼留言