phpbar.de logo

Mailinglisten-Archive

AW: [php] switch und Regex

AW: [php] switch und Regex

Wolfgang Hauck php_(at)_phpcenter.de
Thu, 6 Jun 2002 13:03:19 +0200


>gibt es eine Möglichkeit bei der switch Anweisung auf eine Regexe zu
>matchen??
>Bisher hab ich das noch nicht geschafft :-((

>Baispiel:

>$string = "mein-test-string";

>switch($string)
>{
>	case preg_match("/(-[\w]+-)/",$string) :  /* wenn "-test-" im String
>dann Ausführen */

Hi Maik,

Die switch-Anweisung ist gleichbedeutend einer Reihe von IF-Anweisungen mit
dem gleichen Parameter. Häufig wollen sie ein und die selbe Variable (bzw.
!!! den selben Ausdruck !!!!) mit verschiedensten Werten vergleichen und in
Abhängigkeit vom Auswertungsergebnis verschiedene Programmteile ausführen.
Genau das ermöglicht die switch-Anweisung.
Du wertest $string aus nicht preg_match("/(-[\w]+-)/",$string)

Bsp.:

if ($i == 0) {
 print "i ist gleich 0";
 }
if ($i == 1) {
 print "i ist gleich 1";
}
if ($i == 2) {
print "i ist gleich 2";
}

(Beachte bitte die Gleichheitszeichen)
entspricht:

switch ($i) {
 case 0:
  print "i ist gleich 0";
  break;
 case 1:
  print "i ist gleich 1";
  break;
 case 2:
  print "i ist gleich 2";
  break;
}

Es wird immer die !! selbe Variable !! ausgewertet. Innerhalb einer switch
- Auswertung kann diese nicht verändert werden.

MFG Wolfgang


php::bar PHP Wiki   -   Listenarchive