一、順序控制:
預設情況下由左至右、從上至下的簡單順序執行。不加控制的流程。
二、分支控制:
單一分支、雙分支、多分支;
單一分支語法:
$age=17; if ($age<18) { echo "未满十八岁未成年"; }
雙分支語法:
$age=24; if ($age<18) { echo "未满十八岁未成年"; } else { echo "您已满十八岁符合标准"; }
多分支語法:(elseif可以多個else也可以沒有。switch語句也可用來做多分支判斷)
if ($age<18) { echo "未满十八岁未成年不符合标准"; } elseif ($age>60) { echo "超过六十岁不符合标准"; } else { echo "花好年华!"; }
switch也是多分支語句的常用用法,注意點:
每個case後面必須有break中斷switch,default可選根據需求而定,default放置的位置對執行結果無影響,首先是按照case順序執行,在都匹配不上的時候執行default內容。 switch裡寫條件表達式,case後帶常數(小數也行)。
$day="1"; switch ($day) { case '1': echo "今天星期一"; break; case '2': echo "今天星期二"; break; case '3': echo "今天星期三"; break; default: echo "地球还在转但是不知星期几"; break; }
對if和switch使用場景分析:
if是對某個範圍的判斷,而switch是對一個點的判斷,當分支是幾個點的時候(例如判斷坦克的方向、性別),就應使用switch,如果分支是幾個區域(範圍)的判斷,則考慮使用if。 switch效率更高。
//for循环 for ($i=0; $i < 18; $i++) { echo "<br/>GoodGoodStudy"; }
//while $i=0;//循环控制变量 while ($i<10) { echo "<br/>你好长沙"; $i++;//这里对循环控制变量自增 }
//do while $i=0;//循环控制变量 do { echo "<br/>你好长沙"; $i++; } while($i<10);
印出金字塔的一半練習:
//金字塔的一半 for ($i=0; $i < 5; $i++) {//外层循环控制层数 for ($j=0; $j <= $i; $j++) { //内层循环控制每层个数 echo "*"; } echo "<br/>"; }
列印金字塔練習:
//金字塔 for ($i=0; $i <= 5; $i++) { for ($k=0; $k < 5-$i; $k++) {//打*前打空格 echo " "; } for ($j=0; $j<($i-1)*2+1; $j++) {//每行多少*的规律:($i-1)*2-1 echo "*"; } echo "<br/>"; }
列印空心金字塔練習:
//空心金字塔 $n=5; for ($i=1; $i <= $n; $i++) { for ($k=1; $k <= $n-$i; $k++) {//打*前打空格 echo " "; } for ($j=1; $j<=($i-1)*2+1; $j++) {//每行多少*的规律:($i-1)*2-1 if ($i==1 || $i==$n) { echo "*"; } else { if ($j==1 || $j==($i-1)*2+1) { echo "*"; } else { echo " "; } } } echo "<br/>"; }
#計算器練習:
計算器介面:
<!DOCTYPE html> <html> <head> <title>我的计算器</title> <meta http-equiv="content-type" content="text/html;charset=utf-8"/> </head> <body> <form action="CalResult.php" method="post"> <table width="300px" border="0"> <tr> <td>第一个数</td> <td><input type="text" name="number1"></td> </tr> <tr> <td>第二个数</td> <td><input type="text" name="number2"></td> </tr> <tr> <td>运算符</td> <td> <select name="oper"> <option value="+">+</option> <option value="-">-</option> <option value="*">*</option> <option value="/">/ </option> </select> </td> </tr> <tr> <td colspan="2"><input type="submit" value="计算结果"></td> </tr> </table> </form> </body> </html>
計算結果:
<?php //接收用户从Calculator.php(对应静态页面 浏览器)提交的数据 //1、接收number1 number2 ;REQUEST方法可以接收用户的post或者get请求数据 $number1=$_REQUEST['number1']; $number2=$_REQUEST['number2']; //接收运算符 $oper=$_REQUEST['oper']; $res=0; switch ($oper) { case '+': $res=$number1+$number2; break; case '-': $res=$number1-$number2; break; case '*': $res=$number1*$number2; break; case '/': $res=$number1/$number2; break; default: echo "运算符不正确"; break; } echo "运算结果是:".$res; ?> <a href="Calculator.php">返回计算器页面</a>
以上是透過經典實例帶你學習php三大流程控制的詳細內容。更多資訊請關注PHP中文網其他相關文章!