Bisher haben wir Variablen einfach so benutzt. Doch wie auch andere Programmiersprachen unterstützt PHP verschiedene Variablentypen, doch wie wir gesehen habe muss eine Definition nicht erfolgen.
String
Ein String ist eine Zeichenkette.
Integer
Ein Integer ist eine Ganzzahl in den Grenzwerten -2147483648 und +2147483647. Die Angabe erfolgt ohne Anführungszeichen.
Float
Ein Float ist eine Zahl mit Nachkommastellen, doch wird das Komma als Punkt angegeben.
Boolean
Boolean ist der Variablentyp für Wahrheitswerte, diese können TRUE oder FALSE sein.
Array
Ein Array gruppiert mehrere Variablen zu einer großen. (Haben wir ja bereits kennen gelernt, aber kommt gleich auch noch einmal vertiefend dran.)
Object
Ein Object wird in der objektorientierten Programmierung genutzt, mehr dazu später.
Doch warum sollte man Variablentypen benutzen, wenn man das gar nicht braucht?
Ich denke das viele die PHP lernen erst einmal gar keine Gedanken darüber machen, warum der Einsatz von Variablentypen aktiv zu Sicherheit der eigenen Anwendung beiträgt. Doch über den richtigen Variablentyp können wir schon dafür sorgen das "Müll" einfach raus fliegt.
Schauen wir uns erst einmal einige Variablentypen an.
$var_integer = 21; // ein Integer $var_string = "blubb"; // ein String $var_string = "21"; // sieht auf dem ersten Blick nach Integer aus, ist aber ein String $var_boolean = TRUE; // ein Boolean (Wahrheitswert) // Abfrage der Variablentyps echo gettype($variablenname);
Wie wir sehen kann auch eine Zahl als Zeichenkette deklariert werden.
Die Abfrage des Varianlentypes erfolgt mit der Funktion gettype().
Die Typsetzung ist in PHP sehr einfach und das Überprüfen sogar mit zwei Methoden möglich. Zum einen ermöglicht der gesetzte Typ direkt das Überprüfen und zum anderen gibt es auch je eine Funktion.
Die Typsetzung erfolgt mit:
nach folgenden Schema.
$var_int = (int) $variable;
Somit wird vor dem Speichern in der Datenbank oder der Datei die Variable auf den angegeben Typ gesetzt, damit sollte man beachten das bei einer Falscheingabe immer auch eine Fehlermeldung ausgegeben werden sollte.
Das Test ob der Variablentyp stimm kann mit den folgenden Funktionen erfolgen.
is_int() is_float() is_string() is_array() is_bool()