PHP підтримує вісім простих типів.
Чотири скалярних типи:
Два змішаних типи:
Та два спеціальних типи:
Цей посібник також вводить кілька псевдо-типів для зручності:
Та псевдо-змінну $...
Деякі посилання на тип "double" можуть ще залишатись в посібнику. Сприймайте тип "double", як і тип float; дві назви існують тільки через історичні причини.
Типи змінних не завжди задаються програмістом; частіше це вирішується під час обробки вже самою PHP, в залежності від контексту, в якому змінна використовується.
Зауваження: Щоб перевірити тип та значення виразу, використовуйте функцію var_dump().
Щоб отримати читабельне представлення типів при налагодженні (debugging), використовуйте функцію gettype(). Щоб перевірити конкретний тип, НЕ використовуйте gettype(), замість неї скористайтесь функціями is_type. Ось деякі приклади:
<?php
$a_bool = TRUE; // логічний тип (англ. boolean)
$a_str = "foo"; // рядковий тип (англ. string)
$a_str2 = 'foo'; // теж рядковий тип
$an_int = 12; // цілочисельний тип (англ. integer)
echo gettype($a_bool); // друкуватиме: boolean
echo gettype($a_str); // друкуватиме: string
// Якщо змінна $an_int має цілочисельний тип (тобто integer),
// збільшити її значення на 4
if (is_int($an_int)) {
$an_int += 4;
}
// Якщо $a_bool має рядковий тип, надрукувати її значення
// (оскільки умова не буде виконана, не надрукується нічого)
if (is_string($a_bool)) {
echo "String: $a_bool";
}
?>
Щоб примусово конвертувати змінну до певного типу - або приведіть її тип, або використовуйте функцію settype() для цього.
Зауважте, що змінна може мати різні значення в конкретних ситуаціях, в залежності від її типу в цей час. Детальнішу інформацію можна, прочитати на сторінці Маніпуляції з типами. Також може бути корисною Порівняльна таблиця типів, оскільки в ній показано різні приклади порівнянь, пов'язані з типами.