我在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等)。
另一个可能的解决方案是以某种方式禁用验证,直到您的开发人员能够收回它