public function getRecords(int $id): array;
Привет, может кто-нибудь сказать мне, что делает двоеточие здесь, в этом объявлении метода внутри интерфейса PHP? Является ли этот синтаксис PHP 7 и какой массив здесь имеет значение? Метод должен возвращать массив или что-то еще?
Да, новый синтаксис, введенный в PHP 7 для объявления метода, возвращает массив.
http://php.net/manual/en/functions.returning-values.php#functions.returning-values.type-declaration
Они называются декларациями типа Return в PHP7. Он указывает тип значения, возвращаемого функцией, и это не ограничивается массивами. Например, вы можете использовать float
, int
или даже свой собственный класс:
class MyClass { } function something(): MyClass { return new MyClass(); }
Это не только для удобства чтения. Если функция возвращает тип, отличный от указанного, значение будет принудительно введено в указанный тип. Если он не может быть принужден или включен строгий режим, будет выдана ошибка типа.