我正在Symfony项目上运行PHPStan,其中我在Doctrine实体中具有以下关系:
/**
* @ORM\OneToMany(targetEntity="App\Entity\Course\Slide", mappedBy="chapter", cascade={"persist"}, orphanRemoval=true)
* @ORM\OrderBy({"listOrder" = "ASC"})
*
* @var ArrayCollection<Slide>
*/
private $slides;
使用规则级别6]进行运行分析,我收到有关该属性(及其getter返回类型)的以下消息:
具有通用类
App\Entity\Course\Chapter::$slides
的属性Doctrine\Common\Collections\ArrayCollection
未指定其类型:TKey,T💡您可以通过在checkGenericClassInNonGenericObjectType: false
中设置phpstan.neon
关闭此功能。我的编辑尝试只会使PHPStan感到困惑,也许是因为我在这里没有完全理解泛型。但是仅仅因为我不明白而使消息沉默将是愚蠢的。
我应该在PHPDoc中添加或更改什么?
我在Symfony项目上运行PHPStan,在其中我在Doctrine实体中具有以下关系:/ ** * @ORM \ OneToMany(targetEntity =“ App \ Entity \ Course \ Slide”,mappingBy =“ chapter”,级联= {“ persist”} ...
[ArrayCollection
有两个类型变量:TKey和T。因此,ArrayCollection<Slide>
还不够,您需要类似ArrayCollection<int, Slide>
的东西。