Grundlagen

Bedingte Anweisungen

Wie in jeder Programmiersprache können auch in PHP bedingte Anweisungen eingesetzt werden. Damit kann man einen Codeabschnitt unter einer Bedingung ausführen. In PHP werden die Befehle, welche unter der Bedingung ausgeführt werden sollen, durch geschweifte Klammern gekennzeichnet ({ und }).

Syntax
if(bedingung) {
    Anweisungen;
} elseif (bedingung) {
    Anweisungen;
} else {
    Anweisungen;
}
            
elseif und else sind bei einer bedingten Anweisung optional.
Bedingte Anweisungen werden nicht mit einem Semikolon abgeschlossen. Die geschweiften Klammern zeigen Start und Ende der Anweisungen an.

Die Bedingung muss in runden Klammern (( und )) notiert werden. Für die Bedingung stehen die üblichen Operatoren zur Verfügung:

  • Vergleichsoperatoren: ==, !=, <, <=, >, >=
  • Verknüpfungsoperatoren: and, or
Beispiel 1

Der PHP-Interpreter erhält den Code auf der linken Seite als Eingabe. Es befindet sich ein PHP-Abschnitt im Code. Dieser Abschnitt wird durch den PHP-Interpreter verarbeitet. Der PHP-Interpreter speichert die Zahl 10 in der Variablen $zahl ab. Anschliessend werden die Bedingungen geprüft. Da die zweite Bedingung ($zahl < 20) zutrifft, wird die Zeile in den geschweiften Klammern ausgeführt. Auf der rechten Seite befindet sich das Ergebnis des PHP-Interpreters.

Eingabe: beispiel_1.php
Ausgabe: HTML-Code
<!DOCTYPE html>
<html lang="de">
<head>
    <title>Demo Website</title>
    <meta charset="UTF-8">
</head>
<body>
<h1>Demo</h1>
<?php
$zahl = 10;
if ($zahl < 10) {
    echo "Unter 10!";
} elseif ($zahl < 20) {
    echo "10 - 19!";
} else {
    echo "20 oder mehr!";
}
?>
</body>
</html>
<!DOCTYPE html>
<html lang="de">
<head>
    <title>Demo Website</title>
    <meta charset="UTF-8">
</head>
<body>
<h1>Demo</h1>
10 - 19!
</body>
</html>
Beispiel 2
Eingabe: beispiel_2.php
Ausgabe: HTML-Code
<!DOCTYPE html>
<html lang="de">
<head>
    <title>Demo Website</title>
    <meta charset="UTF-8">
</head>
<body>
<h1>Demo</h1>
<?php
$zahl = rand(1, 20);
if ($zahl >= 10 and $zahl <= 20) {
    echo "Treffer!";
} else {
    echo "Daneben!";
}
?>
</body>
</html>
<!DOCTYPE html>
<html lang="de">
<head>
    <title>Demo Website</title>
    <meta charset="UTF-8">
</head>
<body>
<h1>Demo</h1>
Treffer!
</body>
</html>