PHP เป็นภาษาที่ยืดหยุ่นเรื่องตัวแปรมาก เราใช้ตัวแปรได้โดยไม่ต้องประกาศก่อน และประกาศตัวแปรได้โดยไม่ระบุประกาศชนิดของตัวแปร (variable’s type) ทำให้เขียนได้สะดวก เพราะ PHP จะเลือกชนิดของตัวแปรให้อัตโนมัติ แต่บางครั้งก็ก่อให้เกิดปัญหา เช่น สับสนระหว่าง ค่า 1 หรือ true บางครั้งอาจจะใช้วิธี คูณ หรือ บวกบังคับให้เป็นตัวเลข ความจริง PHPสามารถเปลี่ยนชนิดตัวแปรได้โดยการ casting ตัวแปร (PHP เรียกว่า Type Juggling) ทำโดยการระบุชนิดตัวแปรไปข้างหน้า เช่น[sourcecode language=”php”]<?php
$foo = 10; // $foo เป็น integer
$bar = (boolean) $foo; // $bar เป็น boolean
?>[/sourcecode]

คำสั่ง ชนิดตัวแปร
(int), (integer) integer
(bool), (boolean) boolean
(float), (double), (real) float
(string) string
(array) array
(object) object
(unset) NULL