Всем привет! Прогресс не стоит на месте и php 7 версии предлагает нам возможность явного указывания типа для параметров функций и методов. Итак, поехали!
Всего поддерживается 6 типов которые мы можем задавать для каждого параметра, это: bool, int, float, string, array, callable. Если кто не знает callable - это Callback-функции.
Также в качестве типов можно указывать имена классов интерфейсов.
Все это дело выглядит примерно так:
function summa(int $a, int $b): string{
return $a + $b;
}
var_dump(summa(3, 3));
Здесь у нас задана обычная функция summa которая считает сумму двух чисел.
Каждый переданный параметр проверяется на число. Если в данную функцию одним из параметров передать не число, произойдет ошибка. Однако для удобства работы с числами сделано следующее:
function summa(int $a, int $b): string{
return $a + $b;
}
var_dump(summa(3,'43'));
Данный пример, отработает без ошибки. То есть для типа int мы можем указывать число в виде строки. Отлично!
Еще заметьте что вместо числа данная функция возвращает строку. Это происходит потому что мы явно указали(через string) что у нас будет возвращен результат в виде строки.
Еще примеры:
function text(): bool{
return false;
}
var_dump(text());
Стандартный возвращаемый тип данных boolean.
function text(): string{
return false;
}
var_dump(text());
Здесь результат возвращен уже в виде строки.
function arr(string $str): array{
return explode(',',$str);
}
var_dump(arr('a, b, c'));
В общем примеров еще можно приводит сколько угодно. Общую суть я думаю вы уловили. Благодаря данной возможности можно меньше беспокоится о том что в функцию будет передан или возвращен параметр не соответствующего типа. И еще в плане визуала мы теперь также видим переданные и возвращаемые типы данных. Это очень удобно.
На этом данная статья подошла к концу. Не забывайте оставлять комментарии к данной статье и подписывайтесь в мою группу
вкЯ с вами прощаюсь. Желаю вам успехов и удачи! Пока.