studyklar
IProg · Skript 4 · Abschnitt 6

Konstanten, Operatoren und Verzweigungen in PHP: if und switch

Ein Programm soll je nach Lage verschieden handeln. Dafür braucht es Vergleiche und Verzweigungen. Hier stehen Konstanten, die Operatoren von PHP und die Verzweigungen if und switch, mit den Beispielen der Folien. Mit Weiter geht es Schritt für Schritt voran.

Worum es geht

Skript 04, Folien 28 und 30 bis 34: Konstanten, Operatoren, Logik, if, switch.

Die Frage: Wie vergleicht PHP Werte, und wie wählt ein Programm mit if und switch einen Weg aus?

So gehen wir vor:

  1. Konstanten mit define.
  2. Rechen- und Zuweisungsoperatoren, mit einer Richtigstellung zur Division.
  3. Vergleiche und logische Operatoren.
  4. Verzweigen mit if – elseif – else und mit switch.
  5. Eine kurze Frage im Stil der Klausur.
Merke: Eine Kontrollstruktur bestimmt, welche Anweisungen als Nächstes laufen. In PHP sind sie sehr ähnlich zu C, C++ und Java.

define legt eine Konstante an

Zweibruecken
bool(true)

Eine Konstante ist ein Name für einen Wert, der sich nicht mehr ändert. define("HIER", "Zweibruecken") legt die Konstante HIER an.

Anders als eine Variable steht sie ohne $. Üblich ist, sie ganz in Großbuchstaben zu schreiben. defined("HIER") prüft, ob es sie gibt.

PHP bringt viele Konstanten mit, etwa PHP_OS (das Betriebssystem) und PHP_VERSION.

Division: / teilt genau

3.5
3 integer
3

+, - und * rechnen wie üblich. Folie 30 sagt, / sei bei ganzen Zahlen eine ganzzahlige Division (div). Das stimmt für C und Java, aber nicht für PHP.

In PHP teilt / immer genau: 7 / 2 ergibt 3,5 (PHP schreibt 3.5). Nur wenn die Division aufgeht, wie bei 6 / 2, ist das Ergebnis eine ganze Zahl. Für die ganzzahlige Division gibt es intdiv(7, 2), Ergebnis 3.

Aus Skript 04, Folie 13: var_dump gibt Typ und Wert aus, etwa bool(true): Typ boolean, Wert wahr. gettype nennt den Typ als Text.
Noch 12 Schritte bis zum Ergebnis
Den ganzen Lösungsweg sehen Studierende und Lehrende der HS KL. Registriere dich mit deiner Adresse @stud.hs-kl.de oder @hs-kl.de, dann geht es hier direkt weiter.

Abbildung 1

define("HIER", "Zweibruecken");echo HIER, "\n";var_dump(defined("HIER"));
LegendeEine Konstante wird angelegt und ausgegeben.