PHP有三種流程結(jié)構(gòu):1、順序結(jié)構(gòu),程序中的各個操作是按照它們在源代碼中的排列順序,自上而下,依次執(zhí)行。2、分支結(jié)構(gòu),用于判斷給定的條件,進(jìn)而控制程序的流程;分支結(jié)構(gòu)會根據(jù)某個特定的條件進(jìn)行判斷后,選擇其中一支執(zhí)行。3、循環(huán)結(jié)構(gòu),是指在程序中需要反復(fù)執(zhí)行某個或某些操作,直到條件為假或為真時才停止循環(huán)一種程序結(jié)構(gòu)。
本教程操作環(huán)境:windows7系統(tǒng)、PHP8版、DELL G3電腦
流程控制是控制程序的手段,如果程序沒有了流程控制,就不會有程設(shè)計語言,大多數(shù)程序不是線性執(zhí)行語句控制,如果程序需要和用戶交流,要根據(jù)用戶輸入決定執(zhí)行序列,甚至需要代碼反復(fù)執(zhí)行,這些都離不了流程控制。
在php中有三種基本的程序結(jié)構(gòu):順序結(jié)構(gòu)、分支結(jié)構(gòu)、循環(huán)結(jié)構(gòu)。
1、順序結(jié)構(gòu)
順序結(jié)構(gòu)是最簡單的程序結(jié)構(gòu),程序中的各個操作是按照它們在源代碼中的排列順序,自上而下,依次執(zhí)行。
流程圖如下:
示例:
<?php //實現(xiàn)$a和$b的值互換 $a=3; $b=4; $c=$a; $a=$b; $b=$c; echo'$a='.$a; echo"<br/>"; echo'$b='.$b; ?>
2、選擇結(jié)構(gòu)(分支結(jié)構(gòu))
分支結(jié)構(gòu)又稱條件結(jié)構(gòu),它是依據(jù)明確的條件選擇選擇執(zhí)行路徑,而不是嚴(yán)格按照順序執(zhí)行,在編程實際運用中要根據(jù)程序流程選擇適合的分支語句,它是依照條件的結(jié)果改變執(zhí)行的程序。
流程圖如下:
示例:
<?php $t=date("H"); if ($t>"18") { echo "晚上好!"; } ?>
3、循環(huán)結(jié)構(gòu)
循環(huán)結(jié)構(gòu)是指在程序中需要反復(fù)執(zhí)行某個或某些操作,直到條件為假或為真時才停止循環(huán)一種程序結(jié)構(gòu)。
它由循環(huán)體中的條件,判斷繼續(xù)執(zhí)行某個功能還是退出循環(huán)。根據(jù)判斷條件,循環(huán)結(jié)構(gòu)又可細(xì)分為以下兩種形式:
-
當(dāng)型循環(huán)結(jié)構(gòu):先判斷(條件)再執(zhí)行。
-
直到型循環(huán)結(jié)構(gòu):先執(zhí)行后判斷。
循環(huán)結(jié)構(gòu)可以看成是一個條件判斷語句和一個向回轉(zhuǎn)向語句的組合。另外,循環(huán)結(jié)構(gòu)的三個要素:循環(huán)變量、循環(huán)體和循環(huán)終止條件 ,循環(huán)結(jié)構(gòu)在程序框圖中是利用判斷框來表示,判斷框內(nèi)寫上條件,兩個出口分別對應(yīng)著條件成立和條件不成立時所執(zhí)行的不同指令,其中一個要指向循環(huán)體,然后再從循環(huán)體回到判斷框的入口處.
流程圖如下:
-
"當(dāng)型"循環(huán):當(dāng)給定的條件滿足時執(zhí)行A塊,否則不執(zhí)行A塊而直接跳到下面部分執(zhí)行.
-
"直到型"循環(huán):它的含義是:執(zhí)行A塊直到滿足給定的條件為止(滿足了條件就不再執(zhí)行A塊).
php提供有三種循環(huán)有while循壞、do-while循環(huán)、for循壞
示例1:
<?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
示例2:計算從1加到100的和
<?php header("Content-type:text/html;charset=utf-8"); $i = 1; $sum=0; do { $sum += $i; $i++; } while ($i <= 100); echo '1 + 2 + 3 +...+ 99 + 100 = '. $sum; ?>
輸出結(jié)果:
1 + 2 + 3 +...+ 99 + 100 = 5050
示例3:求1乘到100的乘積(100 的階乘)
<?php $sum=1; for($i=1; $i<=100; $i++){ $sum*=$i; } echo '1 * 2 * 3 *...* 99 * 100 = '. $sum; ?>
輸出:
1 * 2 * 3 *...* 99 * 100 = 9.3326215443944E+157
推薦學(xué)習(xí):《PHP視頻教程》