2017年10月11日 星期三

PHP的程式流程控制

PHP的程式流程控制

PHP的世界裡,也需要一套方法幫助程式做選擇,就是所謂的「條件判斷」
如果有些事情重複性高(如寄100封信、機械性加工等),就可以交給電腦,最符合經濟效益
迴圈的使用,絕對是最佳且唯一的解決方法,
綜合條件判斷及迴圈使用,就是PHP的程式流程控制


如果合乎條件就執行
PHP裡要做條件的判斷就得使用「if…elseif…else」條件判斷式
舉例
$userpwd="1234";   //可輸入其它數值try
$pwd="1234";
if($userpwd==$pwd)
  {
   echo("您輸入的密碼正確,");
   echo("歡迎您蒞臨本網站!");
  }

使用大括號{}來做程式範圍的區隔,以便包含多行的程式碼,
而大括號{}的使用,在PHP的流程控制裡,就如同扮演一個柵欄的角色,若柵欄沒關好,動物就會跑出來,而程式碼也是一樣,將會造成不可預期的錯誤

若條件不成立時的狀況處理
舉例
$userpwd="1234";  //可輸入supervisor或其它數值try
$pwd="1234";
if($userpwd==$pwd)
  {
   echo("您輸入的密碼正確,");
   echo("歡迎您蒞臨本網站!");
  }
elseif($userpwd=="supervisor")
  {
   echo("歡迎站長!");
  }
else
  {
   echo("很抱歉,密碼錯誤,請檢查!");
  }


依據條件選擇執行
「依據條件選擇執行」的「switch」敘述句,
和前面的「如果合乎條件就執行」的「if…elseif…else」條件判斷式有一點點不同

Switch主要是運用在一個變數擁有很多可能值的時候,用「switch」所寫出來的程式碼,
相對會比用條件判斷式「if…elseif…else」所寫出來的顯得工整而簡單多了
範例
$blood="AB";   //可輸入其它數值try
echo("您的血型是".$blood."
");
switch($blood)
{
 case "A":
      echo("A型的你");
      echo("絕頂聰明");
      break;
 case "B":
      echo("B型的你");
      echo("擇善固執");
      break;
 case "O":
      echo("O型的你");
      echo("直爽魅力");
      break;
 case "AB":
      echo("AB型的你");
      echo("浪漫幻想");
      break;
 default:
      echo("關心自己,也要關心別人!");
}


default」的使用,很像「if…elseif…else」在多個條件判斷下的「else」,
同樣是,當所有的條件判斷皆不成立時,才會執行的敘述。























利用迴圈控制流程
「迴圈」的使用能夠幫助我們重複地執行相同的工作,透過迴圈的使用能讓程式在指定的條件下進行複雜的運算。PHP提供了兩種迴圈,一種是「for迴圈」、另一種是「while迴圈」
for迴圈」在使用之前就必須決定要重複的次數
while迴圈」則不斷地執行相同的程式,直到條件不成立為止
範例1
For($a=0;$a<=10;$a++)
{
 echo($a." ");
}
顯示結果
0 1 2 3 4 5 6 7 8 9 10



範例2
$h=1;
while($h<=5)    //符合條件,則繼續執行迴圈
{
 echo($h." ");
 $h++;
}
顯示結果
1 2 3 4 5









此外在迴圈控制(while)裡,還有兩個角色,那就是doexit
do關鍵字是配合while迴圈一起使用的;exit則能讓我們中途跳離迴圈
範例
$num=1;
do
{
 if($num==5)
   {
    echo("
\"\$num=5
,強迫exit\"");
    exit;   //直接跳到程式最後結束;可用break;只跳離此迴圈即可!
   }
 echo($num." ");
 $num++;
}
while($num<=10);
顯示結果
1 2 3 4
"$num=5
,強迫exit"


沒有留言:

用頭腦去思考,不要人云亦云才好, 宗教信徒就是依賴與自私心態(求東求西)的人, 光是這點就很容易暴露弱點了, 難怪seafood吃飽飽,哈哈。 續上, 除了依賴與自私心態(兩者都是人性)之外。 另外也有很大一部份的人,是人云亦云的思考邏輯, 所以宗教才能譁眾取寵。