Bedingungen in PHP: PHP if, else und else if Anweisungen

    Logo der Programmiersprache PHP
    Avatarbild von Patrick
    Patrick

    veröffentlicht am: 01.05.2020
    zuletzt aktualisiert am: 07.02.2023

    Bedingungen in PHP: PHP if, else if und else

    Für die meisten Codezeilen müssen erst bestimmte Bedingungen eintreten, damit deren Ausführung sinnvoll wird. Um zu überprüfen, ob diese Bedingungen bestehen, stehen uns unter anderem die PHP Schlüsselwörter PHP if, elseif und else zur Verfügung.
    Wie du diese verwenden kannst, zeige ich dir in diesem Beitrag.

    if Anweisungen

    PHP if

    Mit if kannst du eine Bedingung formulieren, die zur Ausführung des folgenden Codes erfüllt werden muss.

    $zahl = 1;
    if ($zahl > 0) {
        echo "zahl ist größer als 0";
    }
    // zahl ist größer als 0

    PHP else

    Du kannst else verwenden, um Code zu schreiben, der nur ausgeführt wird, wenn die Bedingung in if nicht zutrifft.

    $zahl = 0;
    if ($zahl > 0) {
        echo "zahl ist größer als 0";
    } else {
        echo "zahl ist kleiner als 0";
    }
    // zahl ist kleiner als 0

    PHP elseif / else if

    Mit elseif bzw. else if kannst du weitere Bedingungen formulieren.

    $zahl = 0;
    if ($zahl > 0) {
        echo "zahl ist größer als 0";
    } elseif ($zahl == 0) {
        echo "zahl ist gleich 0";
    } else {
        echo "zahl ist kleiner als 0";
    }
    // zahl ist gleich 0

    alternative Schreibweise

    Statt eine if Anweisung mit geschweiften Klammern zu formulieren, kannst du auch den Doppelpunkt und das Schlüsselwort endif verwenden.

    $zahl = 0;
    if ($zahl > 0):
        echo "zahl ist größer als 0";
    elseif ($zahl == 0):
        echo "zahl ist gleich 0";
    else:
        echo "zahl ist kleiner als 0";
    endif;
    // zahl ist gleich 0

    In diesem Fall muss elseif zusammengeschrieben werden, da die Schreibweise else if einen Fehler auslösen würde.
    So kannst du eine if Anweisung auch in kürzere PHP-Blöcke integrieren und HTML-Code direkt zurückgeben.

    <?php if ($zahl > 0): ?>
        <span>zahl ist größer als 0</span>
    <?php elseif ($zahl == 0): ?>
        <span>zahl ist gleich 0</span>
    <?php else: ?>
        <span>zahl ist kleiner als 0</span>
    <?php endif ?>

    Operatoren statt if Anweisungen verwenden

    Der bedingte (ternäre) Operator

    Für kürzere if Anweisungen kannst du den bedingten Operator, auch ternärer Operator genannt, verwenden.

    Bedingung ? Wert, wenn true : Wert, wenn false

    Praktisch lässt sich das so anwenden:

    $zahl = 1;
    echo (1 == $zahl) ? 'Ja' : 'Nein';
    // Ja
    echo (0 == $zahl) ? 'Ja' : 'Nein';
    // Nein

    Theoretisch kannst du mit dem ternären Operator auch überprüfen, ob eine Variable einen Wert enthält. Zu beachten ist, dass der Operator nur überprüft, ob der übergebene Wert bei einer Überprüfung true ergibt. Das bedeutet, dass manche Werte unter Umständen ein unerwartetes Ergebnis liefern.

    echo 'Wert' ?: 'false';
    // Wert
    echo '' ?: 'false';
    // false
    echo 0 ?: 'false';
    // false
    echo NULL ?: 'false';
    // false

    Der Null-Koaleszenz-Operator

    Statt Variablen mit dem ternären Operator zu überprüfen, kannst du auch den sogenannten Null-Koaleszenz-Operator (??) verwenden.

    Variable ?? Wert, wenn Variable NULL oder ungesetzt

    Praktisch kann dieser so angewendet werden:

    echo 'Wert' ?? 'Standartwert';
    // Wert
    echo '' ?? 'Standartwert';
    //
    echo 0 ?? 'Standartwert';
    // 0
    echo NULL ?? 'Standartwert';
    // Standartwert
    echo $xyz ?? 'Standartwert';
    // Standartwert

    Und-Operator anstelle von Verschachtelungen

    Um eine Variable auf mehrere Bedingungen zu überprüfen, kannst du innerhalb einer if Anweisung eine weitere if Anweisung verwenden.

    if($zahl > 5) {
        if($zahl < 10) {
            echo 'zahl ist zwischen 5 und 10';
        }
    }

    Dies kann jedoch etwas unübersichtlich werden. Stattdessen kannst du auch den Und-Operater && innerhalb deiner Bedingung verwenden.

    if($zahl > 5 && $zahl < 10) {
        echo 'zahl ist zwischen 5 und 10';
    }

    Fazit – PHP if / else if

    Mit if, elseif und else kannst du einfach überprüfen, ob bestimmte Bedingungen zutreffen. Für kürzere Überprüfungen kannst du auch den ternären Operator verwenden. Wenn du nur überprüfen willst, ob eine Variable gesetzt und nicht NULL ist, ist hierfür der Null-Koaleszenz-Operator am besten geeignet.

    Neben der Verzweigung mithilfe von PHP if steht dir auch noch die Möglichkeit der Implementierung einer PHP Switch Case Anweisung zur Verfügung.

    Hast du noch Fragen oder Kritik? Anregungen oder Lob? Tobe dich doch mit der Kommentarfunktion aus!

    😩 Gelangweilt von den Udemy & YouTube-Tutorials?!

    Lerne spielerisch Python, Java & SQL und komme deiner gutbezahlten (und an der 🌴 liegenden) Traumkarriere einen Schritt weiter.

    TP Star TP Star TP Star TP Star TP Star

    "Für Leute die gerne Python oder Java lernen wollen ist Codegree klasse. Ist nicht wie bei anderen Konkurrenten auf Videokursen aufgebaut..."

    - Lennart Sparbier

    100% kostenlos registrieren · keine Kreditkarte notwendig

    👋 Wir warten bereits auf dich!

    Lerne das, was du wirklich brauchst.

    Im Gegensatz zu der Abendschule oder der alteingesessenen Uni lernst du bei codegree die Sprachen & Pakete, die wirklich im Jobmarkt gesucht werden.

    Logo von Python
    Logo von PyTorch
    Logo von Pandas
    Logo von Matplotlib
    Logo von Java
    Logo von NumPy
    Mehr erfahren

    100% kostenlos registrieren · keine Zahlungsdaten notwendig