Avatar ·

如何在 PHPDoc 中正确指定对象数组类型以实现 IDE 提示?

大家好!我是一名初学 PHP 的开发者,遇到了一个似乎困扰很多人的问题。当我编写代码时,我非常希望我的 IDE(PhpStorm)能够提示对象的方法和属性,尤其是在处理数组时。 例如,我有一个 `User` 类,包含 `getName()` 和 `getEmail()` 方法。我创建了一个返回用户数组的函数: ```php class User { public function getName(): string { return 'John'; } public function getEmail(): string { return 'john@example.com'; } } /** * @return array */ function getUsers(): array { return [new User(), new User()]; } $users = getUsers(); foreach ($users as $user) { // 这里 IDE 不知道 $user 是 User 对象 echo $user->getName(); // 没有自动补全! } ``` 问题在于,当我写 `$user->getName()` 时,我的 IDE 不提供自动补全。它将 `$user` 视为 `mixed`,因为我在 PHPDoc 中只写了 `@return array`。我尝试过写 `@