PHP While 循環(huán)
PHP 循環(huán) -?While 循環(huán)
循環(huán)執(zhí)行代碼塊指定的次數(shù),或者當指定的條件為真時循環(huán)執(zhí)行代碼塊。
PHP 循環(huán)
在您編寫代碼時,您經(jīng)常需要讓相同的代碼塊一次又一次地重復運行。我們可以在代碼中使用循環(huán)語句來完成這個任務。
在程序開發(fā)中總會有一些規(guī)律性的重復操作
我們需要讓一段代碼塊重復的執(zhí)行,譬如:
??????? 輸出重復的文字(構(gòu)造表格);
??????? 對一組數(shù)據(jù)執(zhí)行相同的計算(數(shù)組遍歷);
??????? 操作失敗后的再次執(zhí)行……
循環(huán)都是由循環(huán)體和循環(huán)條件組成,循環(huán)體代表需要重復執(zhí)行的代碼快,而循環(huán)條件代表循環(huán)終止的依據(jù)
在 PHP 中,提供了下列循環(huán)語句:
·???????? while?- 只要指定的條件成立,則循環(huán)執(zhí)行代碼塊
·???????? do...while?- 首先執(zhí)行一次代碼塊,然后在指定的條件成立時重復這個循環(huán)
·???????? for?- 循環(huán)執(zhí)行代碼塊指定的次數(shù)
·???????? foreach?- 根據(jù)數(shù)組中每個元素來循環(huán)代碼塊
while 循環(huán)
while 循環(huán)將重復執(zhí)行代碼塊,直到指定的條件不成立。
PHP中最常見的循環(huán),結(jié)構(gòu)上和if語句一樣,它也依賴于一個條件
while (expr)
??? statement
不同的是if語句是只有expr為true的時候去執(zhí)行一次statement,而while語句是只要expr為true就會不斷重復的執(zhí)行statement
通常我們也建議使用{}將statement包裹起來使用
$num?=?1;
while?($num?<=?5)?{
? ? echo?$num;
}
語法
while (條件)
{
要執(zhí)行的代碼;
}
那么,問題來了,按照while的設計,如果expr一直為true,那么循環(huán)會永遠執(zhí)行下去,因此我們需要在循環(huán)體內(nèi)去改變expr的結(jié)果 .
$num?=?1;
while?($num?<=?5)?{
? ? echo?$num;
? ? $num++;
}
每次循環(huán)執(zhí)行的時候$num會自動加1,那么該循環(huán)體會執(zhí)行幾次?
5次
?
實例
下面的實例首先設置變量?i?的值為 1 ($i=1;)。
然后,只要?i?小于或者等于 5,while 循環(huán)將繼續(xù)運行。循環(huán)每運行一次,i?就會遞增 1:
<html> <body> <?php $i=1; while($i<=5) { echo "The number is " . $i . "<br>"; $i++; } ?> </body> </html>
輸出:
The number is 1
The number is 2
The number is 3
The number is 4
The number is 5
?
do...while 語句
do...while 語句會至少執(zhí)行一次代碼,然后檢查條件,只要條件成立,就會重復進行循環(huán)。
do {
??? statement
} while (expr);
do…while循環(huán)與while循環(huán)最大的不同是,expr的檢測是放在代碼塊的最后,也就是說,不論expr是否為true,do…while循環(huán)至少會執(zhí)行一次
我們平時去飲水機打水,有兩種人,一種人先會看下桶里有沒有水,如果有,再去按下按鈕接水,這是while循環(huán)
另一種人不管,先去按按鈕,出水了就一直接,要是沒出水,再去看看桶里有沒有水,然后默默離開,這是do…while循環(huán)
?
語法
do
{
要執(zhí)行的代碼;
}
while (條件);
實例
下面的實例首先設置變量?i?的值為 1 ($i=1;)。
然后,開始 do...while 循環(huán)。循環(huán)將變量?i?的值遞增 1,然后輸出。先檢查條件(i?小于或者等于 5),只要?i?小于或者等于 5,循環(huán)將繼續(xù)運行:
<html> <body> <?php $i=1; do { $i++; echo "The number is " . $i . "<br>"; } while ($i<=5); ?> </body> </html>
輸出:
The number is 2
The number is 3
The number is 4
The number is 5
The number is 6
for 循環(huán)和 foreach 循環(huán)將在下一章進行講解。