PHP 程式設計/while 迴圈
<?php
$c = 0;
while ($c < 5) {
echo $c++;
}
?>
<?php
$myName="Fred";
while ($myName!="Rumpel") {
if ($myName=="Fred") {
$myName="Leslie";
} else {
$myName="Rumpel";
}
}
echo "How did you know?\n";
?>
這是一個列印從0到4的數字的示例。 $c 最初為 0。當遇到 while 迴圈時,表示式$c < 5將被評估為真假。如果為真,它將執行花括號中的內容。 echo 語句將列印0, 然後將 1 加到$c上。然後程式將返回到迴圈頂部並再次檢查表示式。由於它再次為真,它將返回 1 並將 1 加到 $c 上。它將一直這樣做,直到$c等於5,此時語句$c < 5將為假。之後,它就結束了。
程式的第一行將$myName設定為 "Fred"。之後,while 語句檢查$myName是否等於"Rumpelstiltskin"。在!=中,"不等於" 的意思,所以表示式為真,while 迴圈執行其程式碼塊。在程式碼塊中,一個if語句(見 上一章)檢查它是否等於 Fred。由於它確實等於,它然後重新分配$myName等於"Leslie"。然後它跳過else,因為if為真並被評估。然後它到達迴圈的末尾,所以它返回並檢查$myName是否不等於"Rumpelstiltskin"。由於它仍然不等於,所以它為真,然後它再次進入迴圈。這次,if 語句為假,所以執行 else。這將$myName設定為 "Rumpelstiltskin"。我們再次到達迴圈的末尾,所以它返回並檢查。由於$myName確實等於"Rumpelstiltskin",while 條件為假,它跳過迴圈並繼續執行,它回顯 "你怎麼知道的?"
迴圈是另一種重要的基本程式設計技術。迴圈允許程式重複執行相同的程式碼行,這對程式中的許多事情都很重要。在 PHP 中,你經常使用它們來在 HTML 中佈局表格和其他類似功能。
迴圈非常有用,但也非常危險!無限迴圈是指無法退出的迴圈,導致它們一直執行,直到程式停止。這是因為無論迴圈過程中發生什麼,條件都不會變成假,因此永遠不會退出。例如,如果示例 1 從$c…
$c=2;
while ($c < 5) {
$c--;
echo $c;
}
$c 中減去 1,無論如何 $c 始終小於 5,所以迴圈將永遠持續下去。這對那些沒有無限時間(或計算機記憶體!)的人來說會造成問題!所以,在這種情況下,讓我們學習一個方便的小工具。
如果你在迴圈中新增 'break;',無論條件是否為假,迴圈都將結束。
讓我們將這兩個示例結合起來。在繼續之前,花幾分鐘寫出這個程式經歷的步驟以及它的輸出。
<?php
$c = 1;
$myName="Fred";
while ($myName != "Rumplestilskin") {
if ($myName=="Fred") {
$myName="Leslie";
} else {
$myName="Marc";
}
$c++;
if ($c==3) {
break;
}
};
echo "You lose and I get your baby!\n";
?>