Sadržaj bilo koje varijable podložan je izmjeni svog tipa. Znači da nekakav broj može vrlo lako postati string i obratno.
Tipove možete mijenjati implicitno i eksplicitno (u slijedećim promjerima se neću pridržavati gore navedenih pravila imenovanja varijabli)
Primjer 17 – potrebno ga napisati
<?
// implicitno
$var=1; // varijabla je tipa integer
$var+=1.5 // varijabla je tipa double (realni broj)
$var = 5 + "10 Little Piggies"; // varijabla je integer (15)
$var = 5 + "10 Small Pigs"; // varijabla je integer (15)
// eksplicitno
$int_neki_broj=10;
$str_neki_broj= (string) $int_neki_broj // prebacili smo broj u string (ASCII znakove)
?>
Eksplicitna izmjena tipa varijable se vrši tako da u neku novu varijablu pridružite neku već postojeću varijablu i ispred nje navedete u zagradama tip u koji želimo prebaciti varijablu koju pridružujete. Isto tako možete u varijablu pridružiti nju samu sa eksplicitnom izmjenom tipa podatka
<?
$int_var=10;
$int_var=(double) $int_var;
echo gettype($int_var); // gettype($int_var) vraća tip dane varijable
?>
Moguće konverzije su:
-
(int), (integer) – prebaci u integer
-
(real), (double), (float) – prebaci u double (realni broj)
-
(string) – prebaci u string
-
(array) – prebaci u niz
-
(object) – prebaci u objekt