PHP-Programmierung (weitere Einführung Teil III)

Nachdem doch einige Artikel im Blog sich auf PHP beziehen bzw. in Zukunft auf PHP beziehen werden, möchte ich hier die begonnenen Einführungen in die Programmiersprache fortsetzen. Dabei versuche, einige grundlegende PHP-Eigenschaften, die in Teil 1 und in Teil 2 schon erwähnt wurden, weiter fortzusetzen.

Damit Sie diese Beispiele auch nachvollziehen können, setze ich voraus, dass Sie eine Domain mit Namen meinedomain.de haben, oder sich einen Localhost ( siehe auch mein kostenloses eBook XAMPP-Unabhängigkeit-mit-eigenem-Server) installiert haben.

Die leichteren Dinge wie Kommentare, die Variabele etc wurden im Teil 1 schon erwähnt. Ebenso die Abfolge von <?PHP und ?>, die den Wechsel von PHP-Coding und HTML-Coding jeweils einleitet.

Strukturierung ist alles: Das if-Statement

Um es gleich vorwegzunehmen: In PHP müssen Sie immer möglichst strukturiert arbeiten. Sie tun sich selbst einen Gefallen damit, wenn Sie Einrückungen beibehalten und „schön“ strukturierte Anweisungen schreiben. Ich kann Ihnen versprechen, dass wenn Sie das nicht durchhalten, oder es ihnen jetzt an genau dieser Stelle nicht so wichtig erscheint, Sie spätestens nach 2-3 Wochen, das Programm nicht mehr überblicken und anfangen zu suchen, wo denn was beginnt und wo was endet 🙁

PHP ist eine Programmiersprache, die man völlig in einem Block ohne Zeilenende, Absatz etc. schreiben könnte. Nur das macht natürlich keiner, aber man könnte! Das A & O in PHP ist: Wie Sie das Programm anlegen und schreiben. Gerade am Anfang ist das schwer durchzuhalten, aber Sie sollten es sich von Anfang an angewöhnen.

PHP hat wie z.B. C oder C++ Blockstrukturen, zu diesen gehören z.B. das if-Statement oder das for-Statement, wo sich die Einrückungen im Quelltext bezahlt machen. Schauen wir uns ein typisches if-Statement an:

if ($a > $b) {
  $c = 1;
} else {
  $c = 2;
}

Das if-Statement unterbricht den Ablauf der Logik des Programms und frägt hier, ob die Variabele $a größer als die Variabel $b ist. Ist dies der Fall, wird eine Variabele $c auf den Wert 1 gesetzt. Ist dies nicht der Fall (else) dann wird die Variable $c auf den Wert 2 gesetzt.

Da PHP so definiert ist, dass es auf Einrückungen eigentlich keinen Bezug nimmt, könnte man diese Anweisungen auch so schreiben:

if ($a > $b) { $c = 1; } else { $c = 2;}

Die Einrückungen sind nur für Sie bestimmt, dem Sprachübersetzer ist es völlig egal, wie Sie Ihr Programm schreiben, wehe dem aber, wenn was fehlt!!! :-(.
Schauen wir uns dieses obige Statement noch algemeiner an, so können wir das if-Statement wie folgt allgemein beschreiben.

  1. Ein if-Statement beginnt mit dem Wort if.
  2. Danach kommt die Bedingung, also was geprüft werden soll. Die Bedingung muss immer in Klammer geschrieben werden.
  3. Bei einer Bedingung werden 2 oder mehrere Werte miteinander logisch verknüpft. Also $a > $c oder ähnliches.
  4. Nach der Bedingung teilt sich das Programm in einen Teil, der durchlaufen wird, wenn die Bedingung erfüllt ist. Das Programm führt also alle die Statements aus, die nach der Bedingung stehen, wenn sie wahr ist. Da dies mehrere Anweisungen sein können, werden diese Anweisungen mit { … } eingeklammert.
  5. Falls die Bedingung wahr ist, wird der Wahr-Zweig also durchgeführt. Ist dieser zu Ende, setzt das Programm nach dem gesamten if-Statement wieder auf. Unser else-Zweig bleibt ungerücksichtigt.
  6. Ist die Bedingung nicht erfüllt, entfällt der Teil mit der Wahr-Bedingung und das Programm setzt nach dem else auf.
  7. Zu den geschweiften Klammern: Diese werden nur benötigt, wenn man innerhalb der einzelnen Abfragezweige mehr als ein Statement programmiert. Man kann sie sonst weglassen! Muss es aber nicht, der Übersichtlichkeit halber!

So, jetzt haben Sie schon Verzweigungen in Programmen kennen gelernt! Von diesen gibt es unterschiedliche Spielarten. Hier eine weitere davon:

if ($a == ‚HUGO‘) ….

Hier wird eine Variable mit einem sog. String (hier HUGO) verglichen! Man fragt hier nicht auf „größer als“ sondern auf „gleich“ ab, was uns zu den logischen Verknüpfungen bringt.
Diese logischen Verknüpfungen auch sog. logische Operatoren genannt, wollen wir uns jetzt anschauen:

Operatoren in PHP

In PHP gibt es eine ganze Menge von Operatoren, die ggf. manchmal nicht sogleich einleuchtend sind.
Kommen wir zunächst zu den logischen Operatoren:

Operator Bedeutung
< kleiner als
<= kleiner gleich als
== gleich
>= größer gleich als
> größer als

Bitte beachten: Anfängerfehler
Bei Vergleichen wird die Gleichheit zweier Werte nicht mit = sondern mit == geprüft! Dies gilt im Gegensatz zu der Zuweisung eines Wertes zu einer Variablen, die mit einfachem Gleichheitszeichen = geschrieben wird.

Neben den logischen Operatoren gibt es aber noch arithmetische Operatoren in PHP:

Operator Bedeutung
+ Addition z.B. $a + $b
Subtraktion z.B. $a – $b
* Multiplikation z.B. $a * $b
/ Division z.B. $a / $b
% Divisionsrest z.B. $a % $b; gemeint ist z.B. 5 % 3 = 2 oder 6 % 3 = 0 (Modulodivision)

Diese Hauptoperatoren sollen hier mal genügen. Viel häufiger sind die „Logischen Verknüpfungen“

Operator Bedeutung
|| Logisches Oder z.B. if (( $a == $b) || ($a == $c))
&& logisches Und z.B. if(( $a >= $b) && ($a >= $c))
! Logischer Nichtoperator z.B. if ( !( $a == $b) )

Ein Wort zu den Klammern.
Da man in if-Statements nur logische Ausdrücke als Bedingung angeben kann, muss die Bedingung auch ein solcher „logischer Ausdruck“ sein.
Ich habe mir angewöhnt dies immer so wie oben zu schreiben, obwohl man sich hier Klammern sparen könnte, denn es kommt auf das Ergebnis der Abfrage an.
Hier würde es auch genügen if ( $a == $b || $a == $c ) zu schreiben, da beide Teilausdrücke immer logische Werte darstellen. Mit den umgebenden Klammern,
macht man aber m.E. das Programm übersichtlicher!

Dies sind nicht alle Operatoren, die PHP kennt, aber für unseren Fall zunächst mal die wichtigsten.

Übrigens:
Wer das alles nochmals nachlesen will, und sich wirklich in PHP einarbeiten will, dem sei das Buch „PHP 5“ von Jörg Krause empfohlen, das Sie hier bestellen können. Es liegt bei mir eigentlich immer in Reichweite, weil PHP so viele Funktionen besitzt, die man fast unmöglich alle behalten kann. Deshalb hab ich das Buch immer in Griffweite!

Diese kleine Reihe für angehende PHP-Programmierer wird mit der Betrachtung der Schleifen-Statements fortgesetzt werden. Denn das Ziel ist die vollständige Entwicklung und Erklärung einer Opt-In-Anwendung für den Hausgebrauch Ihres Blogs!

Gruß
Bernd Klüppelberg

Bisher gibt es keinen Kommentar. Schreiben Sie einen Kommentar!

Schreibe einen Kommentar