phpbar.de logo

Mailinglisten-Archive

[php] Switch mit Logik ...

[php] Switch mit Logik ...

Andreas Heigl a.heigl at wdv.de
Mon Nov 1 14:40:57 CET 2004


Am 01.11.2004 14:29 Uhr schrieb "Norbert Pfeiffer" unter <norbert at itbw.de>:

> Hi,
> 
> bei einem Switch-Konstrukt kommt es auch vor, dass
> mehrere Optionen gleich behandelt werden muessen.
> Aber man muss in PHP jede Option einzeln hinschreiben:
> <?
> switch($foo) {
>   case 'aa':  /* mach dies */  break;
>   case 'bb':  /* tue jenes */  break;
>   case 'cc':  /* gib  ruhe */  break;
>   case 'dd':  /* mach dies */  break;
>   case 'ee':  /* tue jenes */  break;
>   case 'ff':  /* mach dies */  break;
> }
> ?>
> In anderen Sprachen schreibe ich dafuer:
> <?
> switch($foo) {
>   case 'aa' OR 'dd' OR 'ff':  /* mach dies */  break;
>   case 'bb' OR 'ee':          /* tue jenes */  break;
>   case 'cc':                  /* gib  ruhe */  break;
> }
> ?>
> In PHP funktioniert das jedoch nicht.
> 
> Gibt es dafuer eine andere Syntax,
> die ich bis jetzt nur uebersehen habe ?
> 

Das hier 
<?
switch($foo) {
  case 'aa':  
  case 'dd': 
  case 'ff':  /* mach dies */  break;
  case 'bb': 
  case 'ee':  /* tue jenes */  break;
  case 'cc':  /* gib  ruhe */  break;
}
?>
ist zumindestens etwas kürzer

Hintergrund: switch() geht solange die case anweisungen durch, bis ein Break
auftritt (oder das switch statement fertig ist)

grüße

andreas




-- 

wdv Medien & Kommunikation GmbH & Co. OHG
Mediendatenverarbeitung
Andreas Heigl
Siemensstrasse 6
61352 Bad Homburg
Germany
Telefon +49-(0)6172-670-185
Telefax +49-(0)6172-670-181
www.wdv.de


php::bar PHP Wiki   -   Listenarchive