Teil von  SELFPHP   Teil von  Praxisbuch  Teil von  Sprachelemente und Syntax  Teil von  Kontrollstrukturen
Letztes Update: 04.09.2007 20:49:50

Navigation

Seite Startseite
Seite Aktuelles
Seite Seite News*
Seite Seite Pressemitteilungen*
Seite SELFPHP
Seite Seite Über SELFPHP
Seite Seite Werbung
Seite Seite Kontakt
Seite Seite Unsere Banner
Seite Seite Impressum
Seite Qozido
Seite Seite Diving Edition
Seite Seite Snorkeling Edition
Seite SELFPHP Dokumentation
Seite Seite PHP-Skripte
Seite Seite PHP Befehlsreferenz
Seite Seite PHP 5 Praxisbuch
Seite Seite PHP Code Snippets
Seite Seite SELFPHP in Buchform
Seite Anbieterverzeichnis
Seite Seite Globale Branchen
Seite Seite Webhosting/Server
Seite Services
Seite Seite Forum*
Seite Seite RSS-Feeds*
Seite Seite Downloads*
Seite Seite Gratis-Video-Lektionen*
Seite Seite SELFPHP auf Heft-CD*
Seite Seite Newsletter*
Seite Internet Security
 sponsored by  
Seite Stellenangebote*
Sedo - Bei uns wird PHP großgeschrieben
Seite Premium-Partner   
Webhosting/Serverlösungen
Seite Produktempfehlung   
Seite Seite SteadyBackup

 
* Link führt ins Internet


Anbieterverzeichnis
Informieren Sie sich über die Unternehmen in unserem Anbieterverzeichnis!  
 


SELFPHP Forum
Fragen rund um die Themen PHP? In über 100.000 Beiträgen finden Sie sicher die passende Antwort!*  


Newsletter
Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!*

Vorname: 
Name:
E-Mail:
 




 

switch-case-Anweisung




Eine Alternative zur if-elseif-Anweisung stellt die switch-Anweisung dar. Sie ermöglicht ebenfalls eine Mehrfachverzweigung, jedoch wirkt der Code wesentlich übersichtlicher und trägt zum besseren Verständnis bei.


Definition

switch (Bedingung/Ausdruck){
  case wert:
    Anweisung/en;
  case wert:
    Anweisung/en;
  [default wert:]
    [Anweisung/en;]
}

$meinLohn = 3000;

// Mehrfachverzweigung (switch-Anweisung)
// Ergebnis: "C"
switch ($meinLohn) {
  case 1000:
    // Anweisung A
    $ausgabe = "A";
    break;
  case 2000:
    // Anweisung B
    $ausgabe = "B";
    break;
  case 3000:
    // Anweisung C
    $ausgabe = "C";
    break;
  case 4000:
    // Anweisung D
    $ausgabe = "D";
    break;
  default:
    // Anweisung E
    $ausgabe = "E";
}

echo $ausgabe;

Es dreht sich auch hierbei wieder alles um den Ausdruck, der in der Regel eine Variable ist. Der default-Teil wird ausgeführt, wenn keiner der vorherigen Werte zutrifft. Dieser Teil der switch-Anweisung ist optional. Jeder Programmblock muss mit dem Kommando break abgeschlossen werden, damit die switch-Anweisung nicht unnötig weiter durchlaufen wird, wenn es zu einer Übereinstimmung mit einer der case-Werte kommt.

Hinweis: break bricht die Ausführung der aktuellen for-, foreach while-, do..while- oder switch-Anweisungs-Sequenz ab.


Erweiterte Syntax

Die Beschränkung des Bedingungstests auf Gleichheit mag als ernsthafte Behinderung erscheinen. Glücklicherweise kennt PHP eine erweiterte Notation der Syntax, die das Problem teilweise behebt. Dabei können mehrere Vergleiche hintereinander ausgeführt werden, die Operanden sind quasi Oder-verknüpft:

<?php
$meinLohn = 3000;

// Mehrfachverzweigung (switch-Anweisung)
switch ($meinLohn) {
  case 1000: case 2000: case 3000:
    // Anweisung A
    $ausgabe = "Zwischen 1000 u. 3000";
    break;
  case 4000: case 5000:
    // Anweisung D
    $ausgabe = "Zwischen 4000 u. 5000";
    break;
  default:
    // Anweisung E
    $ausgabe = "Kein Angabe";
}
// Ausgabe – Zwischen 1000 u. 3000
echo $ausgabe;
?>



Alternative Syntax


Definition

switch (Bedingung/Ausdruck):
  case wert:
    Anweisung/en;
  default:
    Anweisung/en;
endswitch;

Hier ein Beispiel für die alternative Schreibweise einer switch-Anweisung.

<?
$meinLohn = 3000;

// Mehrfachverzweigung (switch-Anweisung)
// Ergebnis: "C"
switch ($meinLohn):
  case 1000:
    // Anweisung A
    $ausgabe = "A";
    break;
  case 2000:
    // Anweisung B
    $ausgabe = "B";
    break;
  case 3000:
    // Anweisung C
    $ausgabe = "C";
    break;
  case 4000:
    // Anweisung D
    $ausgabe = "D";
    break;
  default:
    // Anweisung E
    $ausgabe = "E";
endswitch;

echo $ausgabe;
?>



 




 sponsored by

Sedo - Bei uns wird PHP großgeschrieben


VERIO - An NTT Communications Company


HighText iBusiness


Webspace-Verkauf.de


video2brain




 Premium-Partner
 Webhosting/Serverlösungen

BPI-Systeme


Premium-Partner Pixel X


Premium-Partner First Colo


Premium-Partner dogado Internet




Qozido


© 2001-2008 E-Mail SELFPHP - Damir Enseleit, info@selfphp.deImpressumKontakt