burghi'sphp-dummies.de
PHP für Einsteiger und Fortgeschrittenere - an laufenden Scripten erklärt
10.02.2012, 09:27 Uhr - Impressum

Tutorials - Erste Schritte - Bedingungen - ...sonst wenn

Tutorials - Erste Schritte
Bedingungen: ...sonst wenn
Was aber nun wenn mehrere Bedingungen wahr sind ?
if-Bedingungen stehen jeweils für sich allein.
Sie wissen nicht, welche Bedingung schon abgefragt wurde, entscheiden also sozusagen unabhängig voneinander ob ausgeführt wird oder nicht.
<?php
$a = 5;

if ($a > 0) echo "Größer 0" . "<br />";

if ($a > 10) echo "Größer 10" . "<br />";

if ($a < 10) echo "Kleiner 10" . "<br />";
?>
Soll das nicht so sein, benutzt man das Wörtchen elseif.
Wenn eine Bedingung stimmt, werden die folgenden elseif-Bedingungen gar nicht mehr überprüft.
<?php
$S = date("H");

if ($S < 10) echo "Guten Morgen";
elseif ($S < 18) echo "Guten Tag";     /* vormals " if ($S >= 10 and $S < 18) " */
elseif ($S >= 18) echo "Guten Abend";     /* vormals " if ($S >= 18) " */
?>
Man erspart sich also etwas Schreibarbeit, da nun in den elseif-Bedingungen das "$S >= ..." wegfällt.
Und man kann sich sicher sein, dass immer nur genau eine Bedingung erfüllt wird, der Rest wird ignoriert.

Deutlicher wird es nun, wenn man etwas mehr Unterscheidungen trifft:
<?php
$S = date("H");

if ($S < 4) echo "Ab ins Bett !";
elseif ($S < 10) echo "Guten Morgen";
elseif ($S < 13) echo "Guten Tag";
elseif ($S < 14) echo "Mahlzeit";
elseif ($S < 18) echo "Guten Tag";
elseif ($S < 21) echo "Guten Abend";
elseif ($S >= 21) echo "Gute Nacht";
?>
© 2004-2005 - Impressum