模型的属性是与一个其他记录的关系,例如:
/**
* @var \MyCompany\MyExtension\Domain\Model\OtherObject
*/
public $otherObject;
/**
* @return OtherObject
*/
public function getOtherObject(): OtherObject
{
return $this->otherObject;
}
现在,假设连接的对象不可见(例如,它是隐藏的或有时间限制的)。 Extbase试图分配0,但是PHP需要一个OtherObject的实例。 -您遇到错误。
如何处理?隐藏或有时间限制的记录并不罕见。
答案 0 :(得分:1)
您需要PHP 7.1并使用可为空的返回类型提示,例如?OtherObject
,或者暂时完全删除类型提示。无论如何,您都不能依赖此处返回的内容,因此您的使用方代码需要处理此问题。