在PHP中,如何使用内联类型提示设置变量的返回类型

问题描述 投票:0回答:1

如何避免这种“错误”:

showing error

DataObject::get_one的基本docblocks表示它返回一个DataObject,这是正确的,但是在大多数情况下,它是扩展DataObject的类-例如在这种情况下为class HealthCheck extends DataObject

如果我写:

        /** @var HealthCheck|null */
        $a = DataObject::get_one(HealthCheck::class, ['Published' => true]);
        return $a;

然后scrutiziner不会给我一个错误,但是我确实想要/不能这样写。

silverstripe type-hinting docblocks scrutinizer
1个回答
0
投票

我们可以执行以下操作:

return HealthCheck::get()->filter(['Published' => true])->first();
© www.soinside.com 2019 - 2024. All rights reserved.