PHP: Строгая типизация в PHP 7+
В PHP 7 была добавлена строгая типизация, которая позволяет задавать типы данных для параметров функций и возвращаемых значений. Вот пример кода, демонстрирующего использование строгой типизации:
declare( strict_types=1 ); function add( int $a, int $b ): int { return $a + $b; } $result = add( 2, 3 ); echo $result; // > "5" $result = add( 2.5, 3 ); // > Fatal error: Uncaught TypeError: Argument 1 passed to add() must be of the type int, float given $result = add( "2", 3 ); // > Fatal error: Uncaught TypeError: Argument 1 passed to add() must be of the type int, string given
В этом примере функция add() имеет два параметра типа int и возвращает значение типа int. Ключевое слово declare(strict_types=1)
указывает, что строгая типизация должна быть применена в этом файле. Если параметры не соответствуют заданным типам, будет сгенерирована ошибка времени выполнения.
Кроме того, можно использовать тип float, string, bool, array, object, iterable или callable для параметров функций и возвращаемых значений. Если значение не соответствует ожидаемому типу, будет сгенерирована ошибка времени выполнения.
Использование строгой типизации позволяет улучшить надежность и безопасность кода, упростить его понимание и разработку, а также избежать ошибок связанных с неправильным использованием типов данных в PHP.
Комментарии