【PHP】if…else… / 判斷式 / 語法 / 範例

比起 switch , iZO還是比較喜歡 if 的判斷式阿,可以同時進行不用變數的判斷,要混和html的格式去寫也是輕而易舉的一件事情,switch果然還是只適合在單一項目的判斷上呢!而且if 的寫法十分的多樣,彈性自由度相對提高很多。

跟swith一樣,使用相同的表單來說明

<form action="" method="post">
  中餐吃:<select name="item">
    <option value="1">便當</option>
    <option value="2">魷魚羹</option>
    <option value="3">牛排</option>
  </select>
    <input type="submit" name="Submit" value="決定">
</form>
<?php
if($_POST["item"]=="1"){
 echo "中午吃便當";
}else if($_POST["item"]=="2"){
 echo "中午吃魷魚羹";
}else if($_POST["item"]=="3"){
 echo "中午吃牛排";
}else if($_POST["item"]==NULL){
  echo "不想吃東西";
}
?>

if的等式判斷:
==     相同
!=     不相同
==NULL  空白


如果將 else if($_POST[“item”]==NULL 改成 else 彈性將大大增加

<?php
if($_POST["item"]=="1"){
 echo "中午吃便當";
}else if($_POST["item"]=="2"){
 echo "中午吃魷魚羹";
}else if($_POST["item"]=="3"){
 echo "中午吃牛排";
}else{
  echo "不想吃東西";
}
?>

 


 
或是運用 isset (存在) ,在更多判斷式時,可以減少不少的文字

<?php
if(isset($_POST["item"])){
  echo "中午吃";
}
if($_POST["item"]=="1"){
 echo "便當";
}else if($_POST["item"]=="2"){
 echo "魷魚羹";
}else if($_POST["item"]=="3"){
 echo "牛排";
}
?>

 
或是用 槽狀方式減少PHP判斷的壓力

<?php
if(isset($_POST["item"])){
	echo "中午吃";
	if($_POST["item"]=="1"){
		echo "便當";
	}else if($_POST["item"]=="2"){
		echo "魷魚羹";
	}else if($_POST["item"]=="3"){
		echo "牛排";
	}
}
?>