Как ответить
В PHP есть восемь основных типов данных, которые делятся на три группы: скалярные (int, float, string, bool), составные (array, object) и специальные (NULL, resource). PHP — язык с динамической типизацией, поэтому тип переменной определяется автоматически во время присваивания, но начиная с PHP 7 можно использовать строгую типизацию (declare(strict_types=1)) для функций.
Скалярные типы:
- int — целые числа (диапазон зависит от платформы, обычно 64-битные).
- float — числа с плавающей точкой (double).
- string — строки, работают с UTF-8 (например,
mb_strlen). - bool —
trueилиfalse.
Составные:
- array — упорядоченное отображение (ключ → значение). Ключи могут быть int или string. Пример:
$user = ['name' => 'Ivan', 'age' => 25]; - object — экземпляры классов. Создаётся через
newили приведением типа ((object) $array).
Специальные:
- NULL — переменная без значения.
- resource — внешний ресурс (например, соединение с БД), используется редко, в новых версиях заменяется объектами.
В PHP важно помнить об автоматическом приведении типов. Например, '5' + 3 даст int 8. Это может приводить к неожиданным ошибкам. Для проверки типа используйте is_int(), is_string(), а для явного приведения — (int), (string) и так далее.
Пример кода с определением типа:
$value = 42;
echo gettype($value); // integer
$value = strval($value); // теперь string