Il n'existe que quatre types de données dans le langage PHP.

Les variables comme dans de nombreux langages web ne possèdent pas de types de données prédéfinis. Seul le contenu de la variable en cours de traîtement définira son type de données. Les variables peuvent donc changer de type à n'importe quelle étape du script.

Type Description
entier représente un entier positif compris entre -2 147 483 647 et 2 147 483 647.
flottant représente un nombre à virgule flottante compris entre -1.78 10308 et 1.78 10308.
chaîne de
caractères
représente une chaîne de caractères.
booléen représente une valeur booléenne possédant deux valeurs possibles, soit true ou false.
tableau constitue une collection d'éléments de divers types (objets, chaînes de caractères, valeurs numériques et booléennes).
objet représente des instances de classe opérée avec l'opérateur new.
ressource représente une référence vers une ressource externe, à l'instar d'un fichier avec fopen() ou d'une base de données avec mysql_connect().
NULL représente l'inexistence d'une valeur pour une variable.

Les pseudo-types sont utilisés dans la documentation officielle PHP, pour distinguer les types de données attendus pour les paramètres des fonctions.

Type Description
mixed indique que des paramètres sont susceptibles d'accepter plusieurs types de données distincts.
number indique que des paramètres sont susceptibles de n'accepter que des types numériques.
callback indique que des paramètres sont des noms de fonctions, à l'instar des fonctions call_user_func() et xml_set_default_handler().