在最近转向PHP 7.1之后,我想利用更新的功能,例如返回类型。尝试使用具有7.1语法的phpstorm返回标量类型的数组,看来返回数组或对象数组是唯一接受的列表返回类型。
/**
* @return int[]
*/
public function findFoo(): int[] //syntax error
是否存在严格定义标量返回类型的最佳实践,例如本例中的整数数组?
答案 0 :(得分:2)
对于当前的数组实现,由于数组本身不包含任何类型信息,因此需要在运行时检查所有数组元素。
所以使用这个:
/**
* @return array
*/
public function findFoo(): array //syntax error
答案 1 :(得分:0)
由于PHP数组像变量一样是“多类型的”,因此无法定义数组的类型。
也就是说,您必须将返回类型定义为array
:
/**
* @return array
*/
public function findFoo(): array
这是有效的代码。