Több programozási nyelvben előre kell definiálni, hogy a változónk milyen típusú legyen. De a PHP egy gyengén típusos nyelv.
Ez azt jelenti, hogy valamikor a változónk szöveget tartalmaz máskor viszont számok is lehetnek bennünk, ezért a PHP úgy kezeli az adattípusokat mintha, az csak egy kiegészítő információ lenne az adathoz.
Ez egyfelől rugalmas használatot jelent, de másrészről nagyobb programokban a zavar forrása lehet.
Például ha úgy írtuk meg a programunkat, hogy az egy tömb típusú változót várna és csak egy számot kap, ez esetben hiba léphet fel. Mert a programunk tömb műveletet próbál végezni a változón.
PHP-ban az adattípus lehet:
- Egész szám (Integer) pl.: 8
- Lebegő pontos szám (Double) pl.: 5.432
- Karakter sorozat (String) pl.: Helló világ!
- Logikai változó (Boolean) pl.: true vagy false
- Tömb (Array)
- Objektum (Object)
De rendelkezik két különleges adattípussal:
- Resource – Külső errőforrás pl.: adatbázis
- NULL – Kezdőérték nélküli változó.
A változó típusának a meghatározására a PHP egy beépített gettype() függvényt használ.
Nézzünk erre egy példát:
$x; echo gettype($x); //NULL echo "<br />"; $x = 1; echo gettype($x); //integer echo "<br />"; $x = "egy"; echo gettype($x); // string echo "<br />"; $x = 1.0 echo gettype($x); // double echo "<br />"; $x = false; echo gettype($x); // boolean echo "<br />";