PHP strict_types及其与不可见的TYPO3记录的关系

时间:2018-08-28 08:30:44

标签: typo3 extbase

模型的属性是与一个其他记录的关系,例如:

/**
 * @var \MyCompany\MyExtension\Domain\Model\OtherObject
 */
public $otherObject;

/**
 * @return OtherObject
 */
public function getOtherObject(): OtherObject
{
    return $this->otherObject;
}

现在,假设连接的对象不可见(例如,它是隐藏的或有时间限制的)。 Extbase试图分配0,但是PHP需要一个OtherObject的实例。 -您遇到错误。

如何处理?隐藏或有时间限制的记录并不罕见。

1 个答案:

答案 0 :(得分:1)

您需要PHP 7.1并使用可为空的返回类型提示,例如?OtherObject,或者暂时完全删除类型提示。无论如何,您都不能依赖此处返回的内容,因此您的使用方代码需要处理此问题。