public function getRecords(int $id): array;
大家好,请问这个 PHP 接口中的方法声明中的冒号是什么意思?这是 PHP 7 的语法吗?这里的数组是什么意思?方法必须返回数组还是其他什么?
是的,这是PHP 7中引入的新语法,用于声明返回一个数组的方法。
http://php.net/manual/zh/functions.returning-values.php#functions.returning-values.type-declaration
这些在PHP7中被称为返回类型声明。它表示函数返回的值的类型,不仅限于数组。例如,您可以使用float
、int
或甚至您自己的类:
class MyClass { }
function something(): MyClass {
return new MyClass();
}
这些不仅仅是为了可读性。如果该函数返回的类型与指定的类型不同,则该值将被强制转换为指定的类型。如果无法强制转换,或者启用了严格模式,将抛出类型错误。
;
并不是新的,对于接口中定义的任何方法都需要它。问题中的新语法是返回类型声明的: array
。 - nerdlyist