Programmieren lernen mit PHP
Trainer: Marcel Bulla
Wenn Sie schon immer wissen wollten, wie eine richtige Programmiersprache funktioniert und Begriffe wie Zuweisung, Fallunterscheidung, Programmschleifen und Quellcode keine Fremdworte mehr bleiben sollen, dann sind Sie bei diesem Kurs genau richtig. PHP eignet sich aufgrund seiner leichten Erlernbarkeit gut als Einstiegssprache für Anfänger.
Außerdem ist PHP die mit Abstand am häufigsten eingesetzte Skriptsprache in der Webentwicklung. Der Kurs beschäftigt sich mit grundlegenden Bausteinen einer jeden Programmiersprache wie
- Eingabe/Ausgabe (in verschiedenen Formaten)
- Wertzuweisungen
- Mathematische Berechnungen
- Fallunterscheidung
- Wiederholungen (Verschiedene Schleifenarten)
- Modularisierung durch Funktionen
Inhaltsverzeichnis
- Startseite
- Kapitel Einführung
- 1: Was Sie erwartet
- Kapitel Das Handwerkszeug
- 2: Die Programm-Dateien
- 3: Die Kommandozeile
- 4: Umgebungsvariablen
- 5: Das Demo-Programm
- 6: Der Texteditor
- Kapitel Programmelemente
- 7: Berechnungen
- 8: Variablen
- 9: Kommentare
- 10: Datentypen
- 11: Der Zeilenwechsel
- 12: Drei Aufgaben
- 13: Lückentext
- Kapitel Programme mit Dateneingabe
- 14: Kraftstoffverbrauch
- 15: Das Idealgewicht
- 16: Konstanten
- 17: Zeichenketten
- 18: Das erste eigene Programm
- Kapitel Formatierung
- 19: Formatierte Datenausgabe
- 20: Formatstrings
- 21: Zwei String-Funktionen
- Kapitel Fallunterscheidungen
- 22: if-Verzweigungen
- 23: Vergleichsoperatoren
- 24: Operatoren II
- 25: Switch-Anweisungen
- 26: Übungen zum Kapitel
- Kapitel Zwischenstopp
- 27: Fehlermeldungen
- 28: Logische Fehler
- 29: Ein "sauberes" Skript
- Kapitel Programmschleifen
- 30: Die kopfgesteuerte Schleife
- 31: Die fußgesteuerte Schleife
- 32: Die for-Schleife
- 33: Verschachtelte Schleifen
- Kapitel Programmierwerkzeuge
- 34: Die Kopierfunktion
- 35: Aufgabe zur Kopierfunktion
- 36: Die ASCII-Liste
- 37: Aus klein mach groß
- Kapitel Lokale Anwendungen
- 38: Text verschlüsseln
- 39: Hochrechnung
- 40: Zentrieren
- 41: So machte es C. F. Gauß
- 42: Wortwahl-Rufnummern (Vanity)
- Kapitel Selbst Funktionen schreiben
- 43: Funktionen ohne Übergabewert
- 44: Funktionen mit Übergabewert
- 45: Funktionen mit Rückgabewert
- Kapitel Projekt "CarTax"
- 46: Wertermittlung für Gebrauchtwagen
- Abschluss-Seite
Schnupper-Seite (Seite 22)
Die bisherigen Programme orientierten sich fast immer an dem Muster: "Tue zuerst dies und danach das". Auf Eingaben folgten Berechnungen, Zuweisungen und formatierte Ausgaben. Diese Abfolge lief immer hintereinander ab und wird deshalb auch als sequentielles oder lineares Programmieren bezeichnet.
Wenn aber die Berechnungen oder Bildschirmausgaben an Bedingungen geknüpft sind, dann spricht man von Fallunterscheidungen oder selektivem Programmieren, weil bei diesen Konstruktionen eine Auswahl stattfindet. Sie kommt in der Praxis häufig vor und zählt zu den wichtigsten Elementen der Programmierung. Mit Hilfe der Auswahl ist es möglich, zu bestimmten Programmteilen zu verzweigen und so den linearen Ablauf der Befehlsfolge zu durchbrechen.
Schauen Sie sich einmal das folgende kleine Programm an, bei dem die Parallele zu "Wenn-Dann-Sonst" beim Anwendungsprogramm Excel sofort auffällt.
<?php
$preis_1 = 9.60;
$preis_2 = 5.10;
if ($preis_1 > $preis_2) {
echo "Preis 1 ist groesser!";
}
?>
Mit dem Schlüsselwort "if" überprüfen Sie eine Bedingung, oder auch Ausdruck genannt welche in runden Klammern stehen muss. Es wird überprüft, ob der Ausdruck in der runden Klammer wahr (true) oder falsch (false) ist. Ist der Ausdruck wahr, dann wird der folgende Block, also die Anweisung(en), die zwischen den geschweiften Klammern stehen, ausgeführt. Ist die Variable $preis_1 größer als die Variable $preis_2, wird die Echo-Anweisung ausgeführt. Ist $preis_1 kleiner oder gleich $preis_2, dann überspringt der Interpreter diesen Teil.
Jedes mal wenn eine geschweifte Klammer auf geht werden die nächsten Zeilen mit einem Tabulatorsprung eingerückt und das so lange, bis die geschweifte Klammer wieder zu geht. Also alles innerhalb von geschweiften Klammern einmal einrücken! Wie das aussieht können Sie im nächsten Beispiel sehen.
Wenn, wie in unserem Beispiel, auf die Überprüfung der Bedingung nur eine einzige Anweisung folgt, können die geschweiften Klammern auch weggelassen werden. Das Weglassen ist allerdings eine häufige Fehlerquelle, deshalb raten wir davon ab. Denn oft kommen im Zuge einer Programmerweiterung neue Anweisungen hinzu. Wenn dann die geschweiften Klammern fehlen, führt das zu einem nicht korrekten Programmablauf.
if-else-Verzweigungen
Eine if-Anweisung wird nur ausgeführt, wenn die Bedingung erfüllt (true) ist. Ansonsten läuft das Programm einfach weiter. Um auch den anderen Fall (false) abzufangen, wird "else" benötigt:
<?php
$preis_1 = 4.25;
$preis_2 = 7.30;
if ($preis_1 > $preis_2) {
echo "Preis 1 ist groesser!";
}
else {
echo "Preis 2 ist groesser!";
}
?>
if-elseif
Oft reicht eine if-else-Bedingung nicht aus, da es mehr als zwei Fälle zu unterscheiden gibt. An dieser Stelle kommt "elseif" zum Einsatz. Man kann diese Bedingung beliebig oft in einem if-else-Block verwenden. Das Wort "elseif" darf man sowohl zusammen als auch getrennt "else if" schreiben. Laden Sie am besten das nachstehende Programm: "vorname_3.php" in den Editor und probieren es selbst aus.
// vorname_3.php
echo "Dein Vorname bitte : ";
$vn = trim(fgets(STDIN));
$lang = strlen($vn);
if ($lang > 7)
{
printf("\nDer Name %s ist lang.\n", $vn);
}
elseif ($lang < 7)
{
printf("\nDer Name %s ist kurz\n", $vn);
}
else
{
printf("\nDer Name hat 7 Buchstaben\n");
}
?>
Es ist nicht zwingend vorgeschrieben, dass die erste geschweifte Klammer hinter dem Ausdruck (also hinter der runden Klammer) stehen muss. Sie kann auch in einer neuen Zeile unter dem Wort "if" stehen. Ich rate dennoch zu der oben gezeigten Schreibweise, die öffnende geschweifte Klammer ans Ende der Zeile zu setzen. So wird man auch besser daran erinnert, an dieser Stelle keinen Strichpunkt zu setzen. Die schließende geschweifte Klammer sollte dagegen stets in einer eigenen Zeile, am besten auf der gleichen Spaltenposition wie die Schlüsselwörter "if-else" stehen. Dann lässt sich schneller kontrollieren, ob der Anweisungsblock auch beendet wurde.
Sie sollten sich eine einheitliche und strukturierte Schreibweise für Ihre Skripte aneignen. Die Einrückungen bei den If-Verzweigungen sind ein Schritt in diese Richtung. Denken Sie daran, dass auch andere Personen mit Ihren Programmen und Modulen arbeiten wollen. Dabei tragen gut lesbare Programme zur Verständlichkeit bei.