網頁標題: php 的判斷式
 



php 的判斷式

轉貼網站內容: http://www.php5.idv.tw/html.php?mod=article&do=show&shid=58

1.IF .... ELSE 的用法


在上一篇中我們簡單的介紹了IF的用法.這一篇我們會介紹ELSE這個關鍵字的用法.IF代表的意義是: "如果" ELSE的 意義是 "不然就";就像小學的造句一樣我們會說 "如果WII很貴不然就買PS3吧".所IF ELSE想要表達的就只是這樣的判斷而已.
IF ELSE


//
 買:   
if($_POST["item"]=="wii"){
 echo "謝謝你買了".$_POST["item"]."一台!!";
}else{
 echo "你買的是".$_POST["item"].",不過沒貨,那買ps3吧!!";
}
?>






這就是簡單的IF ELSE用法.


2.IF .. ELSE IF .. ELSE 的用法


在介紹了IF ELSE之後的用法之後我們介紹了一個IF .... ELSE IF .... ELSE 意思是指."否則".簡單一點的說法就是"如果" A "否則" B "不然就是" C,下面的例子應該就可以很清楚的看出來ELSE IF的用法.
IF ELSE



//
 買:   
// if($_POST["item"]=="wii"){
 echo "謝謝你買了".$_POST["item"]."一台!!";
 echo "送手把!!";
}elseif($_POST["item"]=="ps3"){
 echo "謝謝你買了".$_POST["item"]."一台!!";
 echo "賽車搖桿!!";
}
else{
 echo "你什麼也沒買";
}
?>







看完了這二個簡單的例子之後大家是不是更加了解 IF 的判斷式了呢.

接下來我們來看一些其他的需要注意的細節了呢?
首先在這個程式中我們發現了幾個需要問題.
1.當第一次送出的時候為什麼我們明明還沒有送出任何的資,系統就已經輸出了.
2.ELSE IF 只設了一個選項.

所以我們再針對這二個項目再來做一些討論.
1.呈現的時機.在看過前一篇文章的大家應該都知道 if 是一個單獨的可以執行的選項.所以我們可以知道ELSE和ELSE IF是可有可無的所以你可以把程式寫成




// if($_POST["item"]=="wii"){
 echo "謝謝你買了".$_POST["item"]."一台!!";
 echo "送手把!!";
}elseif($_POST["item"]=="ps3"){
 echo "謝謝你買了".$_POST["item"]."一台!!";
 echo "賽車搖桿!!";
}
?>





但是這樣又並不太合我們的需求,所以我們有幾個方式來改變.



a. 在判斷式之後再加上一個判斷式的做法






// if($_POST["item"]=="wii"){
 echo "謝謝你買了".$_POST["item"]."一台!!";
 echo "送手把!!";
}elseif($_POST["item"]=="ps3"){
 echo "謝謝你買了".$_POST["item"]."一台!!";
 echo "賽車搖桿!!";
}
//第二個判斷式
if(isset($_POST["item"])){
 echo "你什麼也沒買!!";
}
?>





上面的這一個用法呢,其中的isset是指變數有值的話傳回true; 整個語法是說 "如果$_POST傳進來的item這個欄位名字有值的話"就向下執行.



b. 在判斷式之後再加上一個判斷式的做法




// if(isset($_POST["item"])){
 //巢狀判斷式 開始包住另一個式子
 if($_POST["item"]=="wii"){
  echo "謝謝你買了".$_POST["item"]."一台!!";
  echo "送手把!!";
 }elseif($_POST["item"]=="ps3"){
  echo "謝謝你買了".$_POST["item"]."一台!!";
  echo "賽車搖桿!!";
 }else
  echo "你什麼也沒買!!";
 
 //巢狀判斷式 結束
}
?>



而這另一個做法呢."如果$_POST傳進來的item這個欄位名字有值的話"就再次的執行下面的的判斷式.這就是巢狀的觀念簡單的說,巢狀的定義就是一段程序碼中執行著另一個程序.


c.使用羅輯運算元




//  if($_POST["item"]=="wii" && isset($_POST["item"])){
  echo "謝謝你買了".$_POST["item"]."一台!!";
  echo "送手把!!";
 }elseif($_POST["item"]=="ps3" && isset($_POST["item"])){
  echo "謝謝你買了".$_POST["item"]."一台!!";
  echo "賽車搖桿!!";
 }else if(isset($_POST["item"]))
  echo "你什麼也沒買!!";

?>



這一個做法是使用羅輯運算元在每一個判斷式中加入一個近的條件式.這些是經常使用的一個判斷式.

所以我們簡單的說了以上的三個方式.當然什麼是最好的方式,不知道!!看程式設計的人.^^或許你還有其他的方式可以用.的確有^^大家可以想想還有什麼樣的方式.

接下來我們要完成我們程式最後的一個問題就是,選xbox居然沒反應的問題.
簡單的來說:ELSE IF是可以用重使用的.所以你可以 IF A (ELSE IF B) (ELSE IF C) ...... ELSE D
所以我們再改一下:



// if(isset($_POST["item"])){
 //巢狀判斷式 開始包住另一個式子
 if($_POST["item"]=="wii"){
  echo "謝謝你買了".$_POST["item"]."一台!!";
  echo "送手把!!";
 }elseif($_POST["item"]=="ps3"){
  echo "謝謝你買了".$_POST["item"]."一台!!";
  echo "送賽車搖桿!!";
 }elseif($_POST["item"]=="xbox 360"){
  echo "謝謝你買了".$_POST["item"]."一台!!";
  echo "送Windows Vista!!";
 }else
  echo "你什麼也沒買!!";
 
 //巢狀判斷式 結束
}
?>




所以看了這麼多的例子IF判斷式就只是這樣子而已.多練習一下就很容易上手啦CC!




本文張貼者:謝福恩〔張貼時間:民國101年12月18日(星期二)17點12分〕

部落格首頁


學習的故鄉首頁
本站公告:〔您越需要我們,我們就越有創意〕 本站說明書:〔發現故鄉還有改進的地方,請來信告訴原丁們〕
觀察應用學習點數 :〔咱的故鄉有您的參與,會使我們有更大的發揮空間,展現更豐富精彩的學習畫面〕 〔期待藉由無障礙網頁設計,能讓視障小朋友更愛看書、更愛寫作且更愛學習〕:盲用電腦「心得分享」
〔為了讓我們有乾淨的學習環境,請勿任意在本站散播商業廣告與不合法文件或聯結〕:本站宣示