2008-10-23 82 views
1

第一個肯定是有效的,但下面哪一個是有效的方法?我可以有多個案件做同樣的事情嗎?

switch($type) { 
    case 1: 
     print 'success'; 
    break; 

    case 2: 
     print 'success'; 
    break; 

    case 3: 
     print 'success'; 
    break; 

    case 4: 
     print 'success for type 4'; 
    break; 
} 

由於1,2和3印刷做同樣的,我能做到這一點?

switch($type) { 
    case 1, 2, 3: 
     print 'success'; 
    break; 

    case 4: 
     print 'success for type 4'; 
    break; 
} 

switch($type) { 
    case 1: 
    case 2: 
    case 3: 
     print 'success'; 
    break; 

    case 4: 
     print 'success for type 4'; 
    break; 
} 

回答

17
switch($type) 
{ 
    case 1: 
    case 2: 
    case 3: 
     print 'success'; 
    break; 
    case 4: 
     print 'success for type 4'; 
    break; 
} 

是要走的路!

3

PHP手冊列舉了像你第3的switch一個例子:

<?php 
switch ($i) { 
case 0: 
case 1: 
case 2: 
    echo "i is less than 3 but not negative"; 
    break; 
case 3: 
    echo "i is 3"; 
} 
?> 
2

我與實際使用情況的人認同:

switch ($i) { 
    case 0: //drop 
    case 1: //drop 
    case 2: //drop 
     echo "i is 0, 1, or 2"; 
    break; 
    // or you can line them up like this. 
    case 3: case 4: case 5: 
     echo "i is 3, 4 or 5"; 
    break; 
} 

我想補充的唯一事情是對的評論多行刪除案例語句,這樣,當你(或其他人)在最初編寫代碼後查看代碼時,它不是一個錯誤。

相關問題