Typehint在PHPStorm中继承了类变量

Ben*_*min 6 phpstorm

在PHPStorm中,我可以通过这种方式键入变量:

/** @var Point $point */
$point->x();
Run Code Online (Sandbox Code Playgroud)

但是,假设我从父类继承了一个变量,并想要输入提示:

class PointProxy extends Proxy
{
    public function x()
    {
        ...

        /** @var Point $this->geometry */
        return $this->geometry->x();
    }
}
Run Code Online (Sandbox Code Playgroud)

这不起作用,PHPStorm就好像我有类型提示$this,而不是$this->geometry.

有没有办法在不重新声明$geometry子类中的属性的情况下使这种类型提示工作,或者这是不受支持的?

fun*_*van 6

试试这个代码.您也可以按alt+enter未定义属性并选择Add @property它将帮助您更快地创建phpdoc.

/**
 * @property Point $geometry
 */
class PointProxy extends Proxy {
  public function x() {
    return $this->geometry->
  }
}
Run Code Online (Sandbox Code Playgroud)

添加属性 完成

  • 它*在父类中受到保护! (2认同)