PHP Switch 語句

switch 語句用於根據多個不同條件執行不同動作。

我們前面學過if......else 語句判斷條件,但是效率低,還有其他更好的方式嗎?我們可以使用到一種方式就是:switch...case語法。

switch...case的語法結構如下:

#switch (expr)

{

    case expr1:

#        statement ;

        break; 

    case expr2:

  

        break; 

   …

   

##  

switch 語句類似於具有同一個表達式的一系列if 語句每個case會依序判斷,expr與expr1..n是否相等,如果相等則執行對應的statement,如果最後有break,則執行完成後跳出switch語句

default是在所有case都無法滿足的情況下預設執行的操作

注意事項:

1.不要在case 後面寫成分號,後面是冒號:2.不要在case後面寫判斷區間,如($foo > 20 或$foo == 30)

3.switch裡面在變數最好是整型,字串,因為布林判斷比較適合if...else..

4.如果把每個case裡的break去掉,那麼每個case裡的程式碼區塊會依序都執行到

5.switch語句可以不寫default,但是作為好的習慣,建議保留default語句

實例

##

<?php
 header("Content-type:text/html;charset=utf-8");    //设置编码
 $dir='north';
 switch ($dir) {
     case 'west':
         echo '西';
         break;
     case 'east':
         echo '东';
         break;
     case 'north':
         echo '北';
         break;
     case 'sourth':
         echo '南';
         break;
     default:
         echo '未知';
         break;
 }

 實例


我們來寫一個簡單的星期判斷:

<?php
 header("Content-type:text/html;charset=utf-8");    //设置编码
 //得到今天是星期几的英文简称
 $day = date('D');
 
 switch($day){
     //拿学校举例,我们让星期一、二、三是校长日
     case 'Mon':
     case 'Tue':
     case 'Wed':
         echo '校长日';
         break;
     case 'Thu':
         echo '星期四';
         break;
     case 'Fri':
         echo '星期五';
         break;
     default:
         echo '周末,周末过的比周一到周五还要累<br />';
 }

看看今天星期幾吧。

繼續學習
||
<?php header("Content-type:text/html;charset=utf-8"); //设置编码 $dir='north'; switch ($dir) { case 'west': echo '西'; break; case 'east': echo '东'; break; case 'north': echo '北'; break; case 'sourth': echo '南'; break; default: echo '未知'; break; } ?>