studyklar
IProg · Skript 4 · Abschnitt 2

PHP-Variablen und ihre Typen: dynamisch, implizit, schwach

In PHP schreibt man nie hin, welchen Typ eine Variable hat. Hier steht, wie Variablen aussehen, woher ihr Typ kommt und wann PHP ihn selbst ändert. Rechts laufen die Beispiele der Folien. Mit Weiter geht es Schritt für Schritt voran.

Worum es geht

Skript 04, Folien 12 bis 14 und 17: Variablen, Typisierung, Boolean, Casts.

Die Frage: Wie legt man in PHP eine Variable an, und welchen Typ hat sie?

So gehen wir vor:

  1. Wie ein Variablenname aussieht und wie man prüft, ob eine Variable gesetzt ist.
  2. Die Typen von PHP und die drei Eigenschaften der Typisierung.
  3. Welche Werte als wahr und welche als falsch gelten.
  4. Das Beispiel der Folie zu Casts: Ein Wert wechselt zweimal den Typ.
  5. Eine kurze Frage im Stil der Klausur.
Merke: Ein Datentyp (kurz Typ) sagt, welche Art Wert etwas ist: Text, ganze Zahl, Kommazahl oder wahr/falsch.

Dollarzeichen und Name

Skript · Variablen (Folie 12)
  • Dollarzeichen ($) gefolgt vom Namen der Variablen.
  • Der Name beginnt mit einem Buchstaben oder _.
  • Der Name darf keine Sonderzeichen (z. B. Umlaute) enthalten.

Eine Variable ist ein Name für einen gespeicherten Wert. In PHP beginnt jede Variable mit einem Dollarzeichen $, wie in der Sprache Perl. Danach kommt der eigentliche Name.

Man muss eine Variable nicht vorher anmelden (deklarieren). Sie entsteht bei der ersten Zuweisung mit =, etwa $zahl = 7;.

$2name ist kein gültiger Name: Er beginnt mit einer Ziffer, PHP meldet einen Syntaxfehler. Umlaute verbietet die Folie. PHP selbst nimmt sie zwar an ($größe läuft), aber in der Klausur gilt die Regel der Folie.

isset prüft, ob eine Variable gesetzt ist

bool(false)
bool(true)

isset($var) antwortet mit true, wenn die Variable existiert und nicht NULL ist, sonst mit false. NULL ist der Wert „nichts“. Das braucht man etwa, um zu prüfen, ob ein Formularfeld überhaupt mitgeschickt wurde.

var_dump gibt einen Wert mit seinem Typ aus, hier bool(false): Typ boolean, Wert false. In Zeile 1 gibt es $zahl noch nicht, nach Zeile 2 schon.

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

$zahl = 7;$_name = 'Harry';$name2 = 'Hirschweg';
LegendeDrei Variablen mit gültigen Namen.