====== PHP-Programmierkurs [5] - if/else & elseif-Anweisung ====== Programme sind in der Lage, auf unterschiedliche Bedingungen zu reagieren. Einzelne Anweisungen werden in diesem Fall nur in bestimmten Situationen ausgeführt.\\ \\ Die Ausführung dieser Anweisungen wird in solchen Fällen von einer oder von mehreren Bedingungen ( ''if -Anweisung'') abhängig gemacht. Je nachdem, ob die Bedingung zutrifft, werden die entsprechenden Anweisungen ausgeführt oder nicht. Darüber hinaus können bei Nichterfüllung der Bedingung alternative Anweisungen ( ''if / else -Anweisung'') bearbeitet werden. Man nennt diese Stellen in einem Programm Verzweigungen oder auch bedingte Anweisungen. **Ein Beispiel für eine Verzweigung mit einer if/else-Anweisung:**\\ \\ "; echo "Das ist billig"; } else { echo "Der Preis liegt bei 1 € oder mehr
"; echo "Langsam wird es teuer"; } ?>
Falls die Bedingung hinter ''if'' **nicht** zutrifft, werden die Anweisungen hinter ''else'' ausgeführt. Auch hier gilt, dass bei mehreren Anweisungen geschweifte Klammern gesetzt werden müssen.\\ \\ Die Ausgabe im Browser:\\ \\ {{:informatik:php:php-programmierkurs:php-if-else-ausgabe.png?nolink&300|}} {{url>https://learningapps.org/watch?v=p4edx1j9k18 80%,600px|iFrame not installed}} **Arbeitsauftrag**\\ \\ "; echo "Das ist billig"; } else { echo "Der Preis liegt bei 1 € oder mehr
"; echo "Langsam wird es teuer"; } ?>
- Stelle das obige **Beispiel** einer if-else-Anweisung mit Hilfe eines [[https://de.wikipedia.org/wiki/Programmablaufplan|Programmablaufplans]] dar. - Der Programmablauf soll ganz konkret zum obigen Code passen! Keine allgemeine Schreibweise! - Du kannst dies handschriftlich machen oder am Computer z.B. mit [[https://www.draw.io|draw.io]]. - Versuche es zunächst ohne die Hilfestellungen! **Hilfe #1** ++++ Auf-/Zuklappen| * Bestandteile eines Programmablaufplans, die du benötigst: Verzweigung, Ausgabe **Hilfe #2** Allgemeiner Programmablaufplan einer Verzweigung mit Ausgaben:\\ \\ {{:informatik:php:php-programmierkurs:programmablaufplan-if-else.jpg?nolink&664|}} **Hilfe #3** Ergänze den Hinweise aus Hilfe #2 noch um eine Operation (Tätigkeit/Anweisung). ++++ **Auszug aus der PHP-Dokumention**\\ (http://php.net/manual/de/control-structures.elseif.php)\\ \\ **elseif**, wie der Name schon sagt, ist eine Kombination aus if und else. Wie else erweitert es eine if-Kontrollstruktur, um alternative Befehle auszuführen, wenn die ursprüngliche if-Bedingung nicht zutrifft. Im Gegensatz zu else werden die Alternativ-Befehle aber nur ausgeführt, wenn die elseif-Bedingung zutrifft. Der folgende Beispielcode gibt a ist größer als b, a ist gleich groß wie b oder a ist kleiner als b aus: $b) { echo "a is größer als b"; } elseif ($a == $b) { echo "a ist gleich groß wie b"; } else { echo "a ist kleiner als b"; } ?> \\ Innerhalb einer if-Kontrollstruktur können mehrere elseif-Strukturen benutzt werden. **Die erste, deren Bedingung zutrifft, wird ausgeführt.** In PHP kann ebenfalls als Schlüsselwort 'else if' (in zwei Wörtern) benutzt werden, was sich komplett identisch wie 'elseif' (in einem Wort) verhält.\\ Der elseif-Teil wird nur ausgeführt, wenn die vorhergehende if-Bedingung und alle vorhergehenden elseif-Bedingungen nicht zutrafen (FALSE) und die aktuelle elseif-Bedingung zutrifft (TRUE). ==== Literatur ==== * Theis, T. (2017): Einstieg in PHP 7 und MySQL. (Rheinwerk Verlag) Bonn {{tag>[informatik thema php php-programmierkurs html html-formulare lernpfad auswahlstruktur vergleichsoperator]}}