[重複執行的迴圈敘述]
所謂迴圈(Loop)就是能讓某一段的程式敘述能夠重複執行許多次的流程控制敘述。 <<計次執行的for迴圈敘述>> 當我們知道迴圈必須執行的次數時, for敘述就是最好的迴圈敘述, 要使用For-Next敘述就必須使用一個控制變數來決定For-Next敘述要執行的次數, 其格式如下:for (計次變數=初值;終止條件;計次變量)
{
敘述區塊;
}
由上列格式中可得知, for敘述可以幫我們建立一個迴圈, 我們只要指定變數起始值、變數的計次變量與終止條件就可以決定迴圈重複的次數。 例如:for ($X=0 ; $X<10 ; $X++)
{
$Y=$Y+$X;
}
- 第一次執行迴圈時, 變數X被指定為起始值。
- 執行迴圈前, 變數X都會先進行是否超過終止值的檢驗, 若超過, 則結束迴圈, 否則就繼續執行迴圈內的敘述。
- 執行過迴圈後, 變數X的值將會加上步進值(1)。
<< while迴圈敘述>>
當知道迴圈必須執行的次數時, for敘述就是最好的迴圈敘述, 但是若不知道迴圈必須執行的次數的話就可以使用while迴圈敘述, 其格式如下:while (條件式)
{
要重複執行的敘述區塊;
}
while迴圈敘述是由保留字while開始, 在其後是一個條件式, 而這個條件式則是一個布林值運算式, 如果這個條件式成立(布林值運算結果為True), 那麼在while迴圈敘述裡(敘述區塊)的程式碼就會執行至結尾, 然後再判斷條件式, 當這個條件式不再成立時, while迴圈敘述就會停止執行。現在我們來比較一下for與while敘述:計算1加至10。 for寫法:
for ($X=0 ; $X<10 ; $X++)
{
$Y=$Y+$X;
}
while寫法:$X=1;
While ($X <= 10)
{
$Y=$Y+$X;
$X=$X+1;
}
看完這兩個敘述的比較, 是不是發現:同樣的功能, 但是while敘述似乎麻煩多了, 不過, 若不知道迴圈會執行幾次, 還是while敘述比較適合, 例如計算6561是3的幾次方。<?php
$test=6561;
$ans=0;
while ($test>1)
{
$test=$test/3;
$ans=$ans+1;
}
echo ("6561是3的" . $ans . "次方");
?>
<< do-while迴圈敘述>>
while敘述是在迴圈一開始的時候就先判斷條件式, 而do-while迴圈敘述則是先執行迴圈內的敘述區塊, 直到迴圈的結尾才進行條件式的判斷。 條件式成立(布林值運算結果為False)時, 那麼在do -while迴圈敘述裡(敘述區塊)的程式碼就會執行至結尾, 然後再判斷條件式, 當這個條件式不成立時, do –while迴圈敘述就會停止執行。do
{
要重複執行的敘述區塊;
} while (條件式);
例如:<?php
$test=6561;
$ans=0;
do
{
$test=$test/3;
$ans=$ans+1;
} while ($test>1);
echo ("6561是3的" . $ans . "次方");
?>
沒有留言:
張貼留言