提问者:小点点

phpstorm:如何生成包含所有父属性和子属性的构造函数


类很少:

abstract class AbstractBase
{
    protected Service1 $service1;

    public function __construct(Serivice1 $s)
    {
        $this->service1 = $s;
    }
}

class Child extends AbstractBase
{
    private Service2 $service2;
}

如果我按Alt+Insert(对于子类)并选择Constructor,PhpStorm将只显示子类的属性。 如何生成同时包含子类和父类的构造函数,像这样?

public function __construct(Service1 $service1, Service2 $service2)
{
    parent::__construct($service1);
    $this->service2 = $service2;
}

共1个答案

匿名用户

如何生成同时包含子类和父类的构造函数

目前还不可能。

https://youtrack.jetbrains.com/issue/wi-40676--观看这张票(星级/投票/评论),获得任何进展的通知。

我现在最好的建议是:

  • 代码生成...菜单(Windows键映射上的Alt+Insert)中,改用重写方法...选项。
  • 然后选择__construct()。 它将创建与父类相同的方法。
  • 然后可以将插入符号移动到Private Service2$Service2;行,将其放在$Service2上,调用Alt+Enter菜单,然后选择Add constructor Parameters条目。