Ben*_*min 17 php doctrine phpdoc docblocks doctrine-orm
是否有标准方法在Doctrine项目的docblock注释中记录Collection内的预期实体类?就像是:
/**
* @var Collection<User>
*/
protected $users;
Run Code Online (Sandbox Code Playgroud)
看起来PHPDoc现在是docblock注释的事实标准,但是我找不到这个用例的任何提及.
Mat*_*oli 82
这是一个解决方案,使您可以在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
}
}
Run Code Online (Sandbox Code Playgroud)
它至少在PhpStorm中扮演着魅力.
CollectionDoctrine 现在用语法记录了通用类型@template,现在至少由 PhpStorm 和静态分析工具(Psalm 和 PHPStan)支持:
/**
* @var Collection<int, User>
*/
protected Collection $users;
Run Code Online (Sandbox Code Playgroud)
不再需要旧的 PhpStorm hacky记录方式。Collection|User[]
| 归档时间: |
|
| 查看次数: |
7527 次 |
| 最近记录: |