缺少“@var注释”;,类型3


missing "@var annotation", Typo3

我在Typo3中遇到了一个扩展问题。我的问题:一个未捕获的Typo3异常:

There is no @var annotation for property "enigma" in class "In2'Femanager'Domain'Model'User"

异常是"…__core/type3_src-6.2.15/typep3/sysext/extbase/Classes/Validation/ValidatorResolver.php"引发的"InvalidArgumentException"。查看Femanager/Domain/Model/User.php的代码,有一行

protected $enigma;

但没有任何

/**
* @var $enigma Enigma
*/

变量$enigma后来由"enigma"类型的对象填充。但如果我加上这部分,什么都不会发生。有人知道如何解决这个问题吗?

根据PHP文档中的var状态,您需要将类型放在变量名称之前。

即:

@var Enigma $engima

不是:

@var $engima Enigma 

此外;您可能需要重新加载操作代码缓存。(OpCache等)。

另一个可能的解决方案是以某种方式禁用验证,直到您的开发人员能够收回它