Datentypen
Jede Variable verfügt über einen Datentypen. Datentypen bestimmen sozusagen das Format einer Variablen. PHP kennt folgende skalare Datentypen:
Boolean (Wahrheitswerte true, false)
Integer (Ganzzahl)
Float (Fließkommazahl)
String (Zeichenketten)
In den folgenden Teilen werden wir über den Datentypen Array sprechen. Im Gegensatz zu den genannten skalaren Datentypen sind Arrays Listen von Werten. Ein Array kann also viele Werte enthalten. Zunächst konzentrieren wir uns nur auf die skalaren Variablen.
Den Datentypen einer Variablen müssen Sie in PHP nicht explizit definieren. Im oben angegebenen Beispiel ist $test vom Datentyp string (Zeichenkette), $zahl vom Typ double (Fließkommazahl) und $i vom Typ integer (Ganzzahl). Diesen Datentyp erkennt PHP von sich aus bei der ersten Zuweisung von Werten. Ändert sich der Datentyp, nimmt PHP automatisch eine Typenumwandlung vor:
<?php $wort = "5 Stück"; print $wort; // Ausgabe: 5 Stück $multipliziert = $wort * 3; print $multipliziert; // Ausgabe: 15 ?>
Bei der ersten Ausgabe in der zweiten Zeile ist $wort vom Typ string. Nach der Multiplikation in Zeile 3 wandelt PHP die Variable in einen integer um. Die Variable $multipliziert enthält nun nur noch die Zahl 15. Sie sollten jedoch immer im Blick haben, welchen Datentyp eine Variable hat und sich nicht zu sehr auf die automatische Typumwandlung von PHP verlassen, da sich hierin eine schwer aufzulösende Fehlerquelle verbirgt. Wenn Sie statt 5 Stück nämlich Stück: 5 verwenden, wird das Beispiel nicht wie erwartet funktionieren, da PHP nur dann automatisch aus einer Zeichenkette eine Zahl ausliest, wenn die Zeichenkette mit einer Zahl beginnt. In diesem Fall jedoch beginnt die Zeichenkette mit Buchstaben, so dass PHP den Integerwert auf 0 setzt. Die Multiplikation mit 3 ergibt in diesem Fall nicht 15, sondern 0.
<?php $wort = "Stück: 5"; print $wort; // Ausgabe: Stück: 5 $multipliziert = $wort * 3; print $multipliziert; // Ausgabe: 0! ?>
Hat eine Variable also einmal in Ihrem Skript einen Typ integer, sollte diese Variable auch die gesamte Laufzeit über vom Typ integer bleiben.
Diese Seite ist für Mitglieder von akademie.de reserviert.
Möchten Sie die Mitgliedschaft 14 Tage kostenlos testen und den Beitrag komplett lesen?
Oder möchten Sie zunächst mehr über diesen Beitrag erfahren und die Leseproben sehen?
Ich bin bereits Mitglied