我們可以利用運算式來作條件的判斷,判斷在某條件下才執行特定程式敘述,這個過程稱條件敘述。以下分別說明:
1. if 條件敘述
簡單來說,if 條件敘述式用來判斷某一事件是否成立,如果成立則會運作指定的事件或程式碼。如果以日常生活來說,如果要去看醫生,要帶健保卡前往。若以程式運作流程來說,如果變數的數值大於100,則會除於3。
<?php if (判斷條件){ PHP程式碼; } ?>
流程圖:
程式說明
<?php $number = "123"; if($number == "123"){ echo "號碼是123"; } if($number == "789"){ echo "號碼是789"; } ?>
執行結果
號碼是123
2. if...else條件敘述
if...else條件敘述即是判斷事件是否成立,若事件成立,則執行該指定的程式碼;若不成立則可以執行其他指定的程式碼。與前面的if 條件敘述相似,差別在於條件沒成立也可以執行其他指定的程式碼。
<?php if (判斷條件){ PHP程式碼1; }else{ PHP程式碼2; } ?>
流程圖:
程式說明:
<?php $number = "789"; if ($number == "123"){ echo "號碼是123"; } if($number == "789"){ echo "號碼是789"; } ?>
執行結果
號碼是789
3. if...else if條件敘述
elseif條件敘述即是判斷多個事件是否成立,若第一個事件成立,則執行第一個事件指定的程式碼;若第二個事件成立,則執行第二個事件指定的程式碼;下面以此類推到最後一行elseif條件敘述,其條件敘述後也能也能使用else條件來執行上述條件皆不成立時需執行的執定程式碼。此條件敘述與上述兩種條件敘述的相似,其差別在於可以指定多個條件來做事件判斷並執行條件成立內程式碼。
使用格式:
<?php if (判斷條件1){ PHP程式碼1; }else if (判斷條件2){ PHPt程式碼2; }else{ PHP程式碼3; } ?>
流程圖:
程式說明:
<?php $number = "456"; if($number == "123"){ echo "號碼是123"; } else if($number == "456"){ echo "號碼是456"; }else{ echo "號碼不是123,也不是456"; } ?>
執行結果:
號碼是456
4. switch 條件敘述
switch條件敘述即是判斷變數、常數或運算式其結果是否符合指定的結果,若符合其一指定結果則執行其指定的程式碼。
switch條件敘述常被用來簡化elseif條件敘述,舉例來說,以switch 的方式來撰寫,就只需要判斷(switch)變數是符合下面哪一個情況(class),就執行對應的輸出。差別在於switch條件敘述只有一條件判斷,且在使用上較為精簡明白。
使用格式:
<?php switch(變數、常數、或運算式){ case '結果1': PHP程式碼1; break; case '結果2': PHP程式碼2; break; default: //case條件預設(皆不成立)執行該指定程式 PHP程式碼3; } ?>
流程圖:
程式碼說明:
<?php switch(4/2){ case'1': echo "計算結果為1"; break; case'2': echo "計算結果為2"; break; default: echo "計算結果不為1或2"; } ?>
執行結果:
計算結果為2