SELFPHP

SELFPHP-Druckversion
Original Adresse dieser Seite:
http://www.selfphp.de/praxisbuch/praxisbuchseite.php?site=128&group=25
© 2001-2024 E-Mail SELFPHP Inh. Damir Enseleit, info@selfphp.de
© 2005-2024 E-Mail PHP5 Praxisbuch - Matthias Kannengiesser, m.kannengiesser@selfphp.de


if-else-Anweisung


Die einfache if-Anweisung entspricht der Anweisung »Wenn die Bedingung erfüllt ist, dann führe die Anweisung aus. Danach fahre mit der Ausführung des Programms fort.« Die zweite Form der if-Anweisung führt den else-Teil ein, der ausgeführt wird, wenn die Bedingung nicht erfüllt, also der Ausdruck false ist. Die Aussage der Anweisung lautet dann: »Wenn die Bedingung erfüllt ist, dann führe die Anweisung aus, ansonsten (else) führe die Anweisung im erweiterten Teil aus. Danach fahre normal mit der Ausführung des Programms fort.«


Definition

if (Bedingung/Ausdruck)
  Anweisung;
else
  Anweisung;



Bild 3.4: Ablaufschema einer if-else-Anweisung

Beispiel

$punkteStand = 50;

// Schreibweise
if ($punkteStand >= 100)
  echo "Wahr";
else
  echo "Unwahr!";

Wie sieht es nun mit einem Anweisungsblock in einer if-else-Anweisung aus? Auch das ist kein Problem.


Definition

if (Bedingung/Ausdruck) {
  Anweisung/en;
} else {
  Anweisung/en;
}
$punkteStand = 50;

// Anweisungsblock
if ($punkteStand >= 100) {
  echo "Wahr";
} else {
  echo "Unwahr!";
}


Alternative Syntax

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


Definition

if (Bedingung/Ausdruck): Anweisung/en; else: Anweisung/en; endif;

Beispiel – Schreibweise wie gehabt

<?php
$chef = "Schmidt";
if ($chef == "Schmidt") {
  echo "Chef ist Schmidt";
} else {
  echo "Unbekannter Chef";
}
?>
{PSP}Beispiel – alternative Schreibweise

<?
$chef = "Schmidt";
if ($chef == "Schmidt"):
?>
Chef ist Schmidt
<?
else:
?>
Unbekannter Chef
<?
endif
?>

Eine weitere Möglichkeit wäre, die alternative Schreibweise wie folgt zu verwenden:

$signal = TRUE;
if ($signal):
  echo "Aktiv: $signal";
  echo "Mehrzeilig!";
else:
  echo "Inaktiv";
  echo "Mehrzeilig";
endif;

Mit der Einführung des Schlüsselworts endif kann das Ende des Blocks explizit angegeben werden. Der else-Befehl ist mit einem Doppelpunkt zu versehen, um die Zugehörigkeit zum Block zu kennzeichnen. Die geschweiften Klammern entfallen!