Типизация в PHP относится к системе, определяющей типы данных для значений и переменных. До PHP 7 PHP был языком с динамической, слабой типизацией. Начиная с PHP 7, добавлена поддержка строгой типизации.
Основные понятия:
- Динамическая типизация: Тип переменной определяется во время выполнения на основе значения, которое ей присваивается. Тип может меняться в процессе выполнения программы.
- Слабая типизация: PHP допускает неявное преобразование типов между различными типами данных в определенных операциях. Например, строка "123" может быть автоматически преобразована в число 123 при арифметических операциях.
- Строгая типизация (с PHP 7): Позволяет объявлять ожидаемые типы для аргументов функций, возвращаемых значений, свойств классов и скалярных типов (int, float, string, bool). Может быть включена с помощью
declare(strict_types=1);. При включенной строгой типизации PHP не выполняет неявные преобразования между скалярными типами.
Примеры типизации в PHP:
php
Типизация, особенно строгая, повышает надежность кода, упрощает его чтение и отладку, а также позволяет раньше выявлять ошибки.