在之前的文章中為大家帶來了《5分鐘搞定PHP的if else語法和NULL資料類型》,這篇文章中詳細的介紹了PHP的if-else的基礎語句,今天我們繼續來看比if-else更有效率的語句,也就是PHP的switch語句。希望對大家有幫助!
switch語句和if-else語句比較類似,都是根據不同的條件去執行不同的動作,但是if-else語句判斷的效率低,我們有更好的方式,也就是switch語句。想要會用switch語句,我們就要先知道它的基礎文法格式。
switch 語句由一個表達式和多個case
標籤組成,舉例如下:
switch (表达式) { case 条件1: 动作1; break; case 条件2: 动作2; break; default://未满足条件1、条件2而剩余的条件 动作3; }
執行switch語句,會先把表達式進行一次計算,然後按順序將表達式中的值與case中的值進行比較,如果相等就會執行其對應的動作或語句,如果不相等就會繼續向下比較下一個case,以此類推,直到switch 語句結束或遇到break
為止。
一般來說,switch 語句最後面會有一個預設值,也就是上面式子中的default
,如果在前面的case 中沒有找到符合的條件,那就會執行預設語句,也就是default。這一點和 else 語句有點類似。
同時,我們在使用switch語句的時候也應該注意一些事項:
case 語句的個數可以一直增加。但 case 標籤和 case 標籤後面的數值之間要有一個空格,在case 後面不要寫成分號(;),後面是冒號(:
)。
在case後面不要寫判斷區間,如($a > 2 或$a == 3)
switch裡面在變數最好是整數,字串,不能是布林型,因為布林判斷比較適合if...else..
#如果每個case裡的break去掉,那麼每個case裡的程式碼區塊依序都會執行到。
switch語句可以不寫default,但是為了養成良好的習慣,建議保留default語句。
和 if 語句不同的是,switch 語句後面必須加上花括號。
<?php $a ="好好学习"; switch ($a) { case "福如东海": echo "福如东海,寿比南山"; break; case "好好学习": echo "好好学习,天天向上"; break; case "一夫当关": echo "一夫当关,万夫莫开"; break; default: echo "nothing"; } ?>
輸出結果:
#輸出:好好學習,天天向上;透過switch語句將表達式符合條件的case動作輸出。
再例如:
<?php $dir='nothing'; switch ($dir) { case 'west': echo '西'; break; case 'east': echo '东'; break; case 'north': echo '北'; break; case 'sourth': echo '南'; break; default: echo '未知'; break; } ?>
輸出結果:
#由於前面的case 中沒有找到符合的條件,那就會執行預設語句,也就是default。因此輸出結果為default的:未知。
推薦學習:《PHP影片教學》
以上是PHP中switch語句怎麼使用(實例解析)的詳細內容。更多資訊請關注PHP中文網其他相關文章!