If - Else
Teil des Abschnitts Grundlagen der PHP-Journey von Coddy — Lektion 29 von 71.
Manchmal möchten Sie, dass Ihr Code eine Sache ausführt, wenn eine Bedingung wahr ist, und etwas Anderes, wenn sie falsch ist. Die else-Klausel ermöglicht es Ihnen, beide Fälle zu behandeln.
Fügen Sie else nach Ihrem if-Block hinzu, um anzugeben, was passiert, wenn die Bedingung falsch ist:
<?php
$age = 15;
if ($age >= 18) {
echo "You can vote";
} else {
echo "You cannot vote yet";
}
?>Da $age 15 ist, ist die Bedingung falsch, sodass PHP den else-Block ausführt und „You cannot vote yet“ ausgibt.
Für mehr als zwei Möglichkeiten Bedingungen mit elseif verketten:
<?php
$score = 75;
if ($score >= 90) {
echo "Grade: A";
} elseif ($score >= 80) {
echo "Grade: B";
} elseif ($score >= 70) {
echo "Grade: C";
} else {
echo "Grade: F";
}
?>PHP prüft jede Bedingung von oben nach unten und führt den ersten passenden Block aus. Sobald eine Übereinstimmung gefunden ist, überspringt es alle verbleibenden Bedingungen. Hier scheitert 75 an den ersten beiden Prüfungen, trifft aber $score >= 70, sodass „Grade: C“ ausgegeben wird.
Aufgabe
EinfachLesen Sie zwei Ganzzahlen aus der Eingabe: eine temperature und eine hour (im 24-Stunden-Format, 0-23).
Bestimmen Sie die geeignete Nachricht basierend auf den folgenden Bedingungen:
- Wenn die Temperatur unter 0 liegt, geben Sie
Freezing conditionsaus - Sonst, wenn die Temperatur unter 15 liegt, geben Sie
Cold weatheraus - Sonst, wenn die Temperatur unter 25 liegt, geben Sie
Pleasant weatheraus - Sonst geben Sie
Hot weatheraus
Dann, in einer neuen Zeile, geben Sie eine Begrüßung basierend auf der Stunde aus:
- Wenn die Stunde kleiner als 12 ist, geben Sie
Good morning!aus - Sonst, wenn die Stunde kleiner als 18 ist, geben Sie
Good afternoon!aus - Sonst geben Sie
Good evening!aus
Beispiel:
Wenn die Eingaben 20 und 9 sind, sollte die Ausgabe sein:
Pleasant weather
Good morning!Wenn die Eingaben -5 und 14 sind, sollte die Ausgabe sein:
Freezing conditions
Good afternoon!Spickzettel
Die else-Klausel spezifiziert, was passiert, wenn eine if-Bedingung falsch ist:
<?php
$age = 15;
if ($age >= 18) {
echo "You can vote";
} else {
echo "You cannot vote yet";
}
?>Verwenden Sie elseif, um mehrere Bedingungen zu verketten:
<?php
$score = 75;
if ($score >= 90) {
echo "Grade: A";
} elseif ($score >= 80) {
echo "Grade: B";
} elseif ($score >= 70) {
echo "Grade: C";
} else {
echo "Grade: F";
}
?>PHP überprüft die Bedingungen von oben nach unten und führt den ersten passenden Block aus, dann überspringt den Rest.
Probier es selbst
<?php
// Eingabe lesen
$temperature = intval(fgets(STDIN));
$hour = intval(fgets(STDIN));
// TODO: Schreibe deinen Code darunter
// Bestimme die Wetter-Nachricht basierend auf der Temperatur
// Bestimme den Gruß basierend auf der Stunde
?>Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Grundlagen
4Comparison & Logical Operators
Comparison OperatorsEquality & IdentityLogical Operators Part 1Logical Operators Part 2Recap - Simple Logic2Variables and Data Types
NumbersStrings and QuotesBooleansNaming ConventionsRecap - Variable InitEmpty VariablesString ConcatenationGetting User InputCast to Different Types5Conditional Logic
If StatementIf - ElseThe Ternary OperatorNull Coalescing OperatorSwitch StatementRecap - Making Decisions3Basic Operators
Arithmetic OperatorsModulo OperatorExponentiation OperatorCombined AssignmentIncrement/DecrementOperator PrecedenceRecap - Simple CalculationsString Operators