我正在使用php7.1的新功能,允许在项目Symfony 3上返回一个可空类型,但在实体中使用它时遇到问题:
<?php
// ....
public function getCreatedBy(): ?string
{
return $this->createdBy;
}
当我使用此功能时出现此错误:
Type error: Return value of
Proxies\\__CG__\\NS\\ModulesBundle\\Entity\\Account::getCreatedBy()
must be of the type string, null returned
我看了一下用Symfony自动创建的类的代码,我发现了这个:
<?php
// ...
public function getCreatedBy(): string
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'getCreatedBy', []);
return parent::getCreatedBy();
}
如您所见,该类型不可为空。
有人能帮助我吗?感谢
答案 0 :(得分:1)
我通过从版本2.6升级到doctrine / doctrine-common library的版本2.8修复了问题