在ide中通过__get访问的文档变量


Document variables that are accessed via __get for IDEs

是否有一种方法可以记录通过__get魔术方法访问的变量,使ide能够识别它们的存在并返回类型?

例如,我想通过__get暴露donehelper,但也希望像PHPStorm这样的IDE能够知道它们的存在:

class Thing
{
    /** @var bool */
    private $done;
    /** @var HelperThing */
    private $helper;
    __get( $name )
    {
        if ( $name === "done" )
            return $done;
        if ( $name === "helper" )
            return $helper;
    }    
}

我试图避免使用像$thing->getHelper()这样的psudeo-getter方法,因为我更喜欢$thing->helper->someOtherMethod()的风格。

您可以将@property标记用于魔术属性,并将@method标记用于魔术方法文档。这些是由PHPStorm支持的。更多信息请参见@property和@method的文档。