在之前的文章《PHP數(shù)組學(xué)習(xí)之聊聊輸出數(shù)組的幾種方法》中我們以foreach語句為例,簡單提了一下循環(huán)語句。在接下來我們通過一系列的文章來了解下PHP中的循環(huán)控制語句,保證你一看就懂,快來一起學(xué)習(xí)吧!
本篇文章先來給大家介紹一下PHP中最簡單的循環(huán)語句–while循環(huán)語句,分析語法格式和執(zhí)行過程,通過代碼實(shí)例了解一下它的使用方法。后續(xù)的文章會(huì)慢慢加深難度,了解其他的循環(huán)語句。(附視頻教程:從0開始進(jìn)入PHP的世界)
while循環(huán)語句是一種當(dāng)型
循環(huán)語句,先對(duì)循環(huán)條件進(jìn)行判斷,當(dāng)條件滿足,則執(zhí)行循環(huán)體,不滿足時(shí)則停止。
作用:反復(fù)執(zhí)行某一項(xiàng)操作,直到指定的條件不成立。(附手冊(cè):PHP While 循環(huán))
特點(diǎn):先判斷表達(dá)式,當(dāng)表達(dá)式結(jié)果為真時(shí)執(zhí)行相應(yīng)的語句。
while循環(huán)的一般形式為:
while(表達(dá)式){ //表達(dá)式為循環(huán)條件 PHP語句塊; //PHP語句塊為循環(huán)體 }
語句解析:
-
先計(jì)算“表達(dá)式”的值,當(dāng)值為真時(shí), 執(zhí)行循環(huán)體內(nèi)的“PHP語句塊”;
說明:“表達(dá)式”的計(jì)算結(jié)果是布爾類型( TRUE 或 FALSE)的,如果是其他類型的值也會(huì)自動(dòng)轉(zhuǎn)換為布爾類型的值(因?yàn)镻HP是弱語言類型,會(huì)根據(jù)變量的值,自動(dòng)把變量轉(zhuǎn)換為正確的數(shù)據(jù)類型)。
“語句塊”就是由
{ }
包圍的一個(gè)或多個(gè)語句的集合;如果語句塊中只有一個(gè)語句,也可以省略{ }
。 -
執(zhí)行結(jié)束后,返回到表達(dá)式,再次計(jì)算表達(dá)式的值進(jìn)行判斷,當(dāng)表達(dá)式值為真,則繼續(xù)執(zhí)行“語句塊”……這個(gè)過程會(huì)一直重復(fù)
-
直到表達(dá)式的值為假時(shí)才跳出循環(huán),執(zhí)行while 下面的語句。
while語句的流程圖如下所示:
通?!氨磉_(dá)式”是使用比較運(yùn)算符或者邏輯運(yùn)算符計(jì)算后的值
示例:計(jì)算1加到100的值
<?php header("Content-type:text/html;charset=utf-8"); $i = 1; $sum=0; while($i<=100){ $sum+=$i; $i++; } echo "1加到100的值為:".$sum ; ?>
輸出結(jié)果:
1加到100的值為:5050
注:“死循環(huán)”–無法靠自身的控制終止的循環(huán)
如果表達(dá)式一直為真,循環(huán)條件一直成立,則while 循環(huán)會(huì)一直執(zhí)行下去,永不結(jié)束,成為“死循環(huán)”
<?php $i=1; while($i){ echo $i; } ?>
運(yùn)行程序后,會(huì)一直輸出變量$i
的值,直到用戶強(qiáng)制關(guān)閉。
推薦:《2021年P(guān)HP面試題大匯總(收藏)》《php視頻教程》