2010-09-02 14 views
14
switch ($i) { 
    case A: 
     $letter = 'first'; 
     break; 
    case B: 
     $letter = 'first'; 
     break; 
    case C: 
     $letter = 'first'; 
     break; 
    case D: 
     $letter = 'second'; 
     break; 
    default: 
     $letter = 'third'; 
} 

¿Hay alguna forma de acortar los primeros tres casos?Interruptor, mismo valor para caja múltiple

Tienen los mismos valores en el interior.

Respuesta

73
switch ($i) { 
    case A: 
    case B: 
    case C: 
     $letter = 'first'; 
     break; 
    case D: 
     $letter = 'second'; 
     break; 
    default: 
     $letter = 'third'; 
} 

Sí hay. Si no hay break después de case, también se ejecuta el código debajo del siguiente case.

+5

+1 porque ha explicado por qué funciona. – villecoder

7
switch ($i) { 
    case A: 
    case B: 
    case C: 
     $letter = 'first'; 
     break; 
    case D: 
     $letter = 'second'; 
     break; 
    default: 
     $letter = 'third'; 
} 
Cuestiones relacionadas