Marc: Switch mit OR

Kann man bei einem Switch eine Alternative mit 2 verschiedenen Möglichkeiten ansteueren:

z.B.

switch ($variable)
{
 case 1 OR 2:
 {
 ...
 }
}

Ich habe es mit || und | ausprobiert - kein Erfolg

  1. Hallo Marc,

    Kann man bei einem Switch eine Alternative mit 2 verschiedenen Möglichkeiten ansteueren:

    ja, siehe http://php.net/switch:

      
    switch ($i) {  
    case 0:  
    case 1:  
    case 2:  
       echo "i ist kleiner als 3 aber nicht negativ";  
       break;  
    case 3:  
       echo "i ist gleich 3";  
    }  
    
    

    Grüße
      David

    --
    >>Nobody will ever need more than 640k RAM!<<
    1981 Bill Gates
    1. Klasse - danke schön für den Tipp

  2. Probiere mal deine beiden Angaben zu klammern.

    switch ($variable)

    {
    case (1 || 2):do;break;
    }

    Gruß
    Localhorst

    1. Probiere mal deine beiden Angaben zu klammern.

      switch ($variable)

      {
      case (1 || 2):do;break;
      }

      Gruß
      Localhorst

      hatte ich schon - ging leider nicht

    2. echo $begrüßung;

      Probiere mal deine beiden Angaben zu klammern.

      switch ($variable)

      {
      case (1 || 2):do;break;
      }

      Das kann nicht funktionieren. Der Ausdruck (1 || 2) wird vor dem Vergleich ausgerechnet. Sein Ergebnis ist true. Alle Werte von $variable, die nicht grade 0 sind bzw. zu false gecastet werden, erfüllen damit die Bedingung.

      echo "$verabschiedung $name";