Вот решение, которое позволяет вам выполнять автозаполнение как для методов Collection
, так и для методов ваших объектов:
/**
* @param Collection|User[] $users
*/
public function foo($users)
{
$users-> // autocompletion on Collection methods works
foreach ($users as $user) {
$user-> // autocompletion on User methods work
}
}
Это работает как шарм в PhpStorm, по крайней мере.