Teil von  SELFPHP   Teil von  Praxisbuch  Teil von  Kontrollstrukturen
Letztes Update: 16.08.2005 17:53:45


Navigation

Seite News *

Seite Startseite
Seite Über SELFPHP
Seite Werbung
Seite Kontakt
Seite Forum *
Seite Download *
Seite SELFPHP Banner *
Seite SELFPHP in Buchform
Seite Newsletter *
Seite Impressum

 
* 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 79.000 Beiträgen finden Sie sicher die passende Antwort!  


Newsletter
Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 



 

if-elseif-Anweisung




Die if-elseif-Anweisung wird vor allem für Mehrfachverzweigungen eingesetzt. Damit lassen sich in Abhängigkeit vom Wert einer Variablen verschiedene Anweisungen ausführen.


Definition

IF (BEDINGUNG/AUSDRUCK) {
ANWEISUNG/EN;
} ELSEIF (BEDINGUNG/AUSDRUCK) {
ANWEISUNG/EN;
} ELSEIF (BEDINGUNG/AUSDRUCK) {
ANWEISUNG/EN;
} ELSE {
ANWEISUNG/EN;
}


Ablaufschema einer if-elseif-Anweisung


Fallbeispiel


WENN MEINLOHN DEN WERT
1000 HAT: FÜHRE ANWEISUNG A AUS,
2000 HAT: FÜHRE ANWEISUNG B AUS,
3000 HAT: FÜHRE ANWEISUNG C AUS,
4000 HAT: FÜHRE ANWEISUNG D AUS,
IN ALLEN ANDERN FÄLLEN: FÜHRE ANWEISUNG E AUS.


Beachten Sie den grundsätzlichen Unterschied zur if-else-Anweisung. Die Bedingung einer if-else-Anweisung ist immer ein boolescher Wert, der nur einen der beiden Werte true oder false annehmen kann. Folglich verzweigt die if-else-Anweisung auch nur in zwei alternative Anweisungsblöcke. Bei der Mehrfachverzweigung wird dagegen der Wert einer Variablen abgefragt: Der Programmierer kann grundsätzlich ebenso viele alternative Verzweigungen formulieren wie es Werte für die Variable gibt.



$meinLohn = 3000;

// Mehrfachverzweigung (if-elseif-Anweisung)
// Ergebnis: "C"
if ($meinLohn == 1000) {
    // Anweisung A
    $ausgabe = "A";
} elseif ($meinLohn == 2000) {
    // Anweisung B
    $ausgabe = "B";
} elseif ($meinLohn == 3000) {
    // Anweisung C
    $ausgabe = "C";
} elseif ($meinLohn == 4000) {
    // Anweisung D
    $ausgabe = "D";
} else {
    // Anweisung E
    $ausgabe = "E";
}

echo $ausgabe;



Lassen Sie sich aber nicht von der Einrückung täuschen. Es handelt sich hier immer noch um vier, immer tiefer verschachtelte if-else-Anweisungen. Der Interpreter prüft zuerst, ob der Wert von meinLohn gleich 1.000 ist. Ist dies nicht der Fall, prüft er im else-Teil, ob meinLohn gleich 2.000 ist. Stimmt auch dies nicht, verzweigt er zum else-Teil mit dem Vergleich meinLohn gleich 3.000. Stimmt auch dies nicht, verzweigt er zum else-Teil mit dem Vergleich meinLohn gleich 4.000. Liefert auch dieser Vergleich false, landet der Interpreter in dem letzten else-Teil, der alle anderen nicht überprüften Fälle abfängt.


Altenative Syntax

In PHP steht auch für die if-elseif-Anweisung eine alternative Schreibweise zur Verfügung.


Definition

IF (BEDINGUNG/AUSDRUCK):
ANWEISUNG/EN;
ELSEIF:
ANWEISUNG/EN;
ELSE:
ANWEISUNG/EN;
ENDIF;



Beispiel - Schreibweise wie gehabt



<?php
$chef 
"Schmidt";
if (
$chef == "Müller") {
    echo 
"Müller ist der Chef";
} elseif (
$chef == "Schmidt") {
    echo 
"Scmidt ist der Chef";
} else {
    echo 
"Unbekannter Chef";
}
?>




Beispiel - alternative Schreibweise



<?
$chef 
"Schmidt";
if (
$chef == "Müller"):
?>
Müller ist der Chef
<?
elseif ($chef == "Schmidt"):
?>
Schmidt ist der Chef
<?
else:
?>
Unbekannter Chef
<?
endif
?>





 


if-else-Anweisung
 




 sponsored by

Host Europe


HighText iBusiness


Host Europe




© 2001-2006 E-Mail SELFPHP - Damir Enseleit, info@selfphp.deImpressumKontakt
© 2005-2006 E-Mail PHP5 Praxisbuch - Matthias Kannengiesser, m.kannengiesser@selfphp.de