取自於W3S對PHP條件式Switch的一段說明:
Conditional statements are used to perform different actions based on different conditions.
筆者個人對Switch的解釋是,根據系統需求,你預先設計幾個選項,當條件附合某一項時,即執行該區塊內的程式碼,相當的直觀,也是一個時常用的到的條件式。
語法:
switch (n) //n即代表要進行判斷的參數 { case label1: //case是語法之後,後頭的label1是設定的參數 code to be executed if n=label1; //成立後即執行區塊內的參數 break; //重要,必須配合使用,用於程式執行完畢跳出switch使用 case label2: code to be executed if n=label2; break; default: //當傳遞的參數都不符合case所設定的值,即使行這段預設程式 code to be executed if n is different from both label1 and label2; } |
Break這個語法,必須配合switch使用,在各個case區塊中的code,一旦執行畢,必須使用break來進行中斷跳出的動作,這是必須的。當然,break也可以用在別的地方,往後我們會再做說明。
Example:
<html> <body> <?php switch ($x) { case 1: echo "Number 1"; break; case 2: echo "Number 2"; break; case 3: echo "Number 3"; break; default: echo "No number between 1 and 3"; } ?> </body> </html> |
我們可以看到,如果$x,是1、或是3,會分別執行,case 1、case2或是case3其中一項下方的程式碼,如果不是這三者,會執行default底下的程式碼區塊,輸入No number between 1 and 3這段字串。
假設這段要用if…else來寫,會變成以下這段code:
<html> <body> <?php If($x = 1){ echo "Number 1"; }elseif($x = 2){ echo "Number 2"; } elseif($x = 3){ echo "Number 3"; }else{ echo "No number between 1 and 3"; } ?> </body> </html> |
同樣也可以達到一樣的效果,不過,總是讓人覺得不夠漂亮,由其是當選項一多的時候,此時使用switch可以更讓你的程式更直觀。
PHP與MySQL網頁設計實務/網奕出版/吳權威 編著
沒有留言:
張貼留言