php - PhpStorm:如何生成具有所有父属性和子属性的构造函数
问题描述
有几个类:
abstract class AbstractBase
{
protected Service1 $service1;
public function __construct(Serivice1 $s)
{
$this->service1 = $s;
}
}
class Child extends AbstractBase
{
private Service2 $service2;
}
如果我按Alt + Insert
(for child class) 并选择Constructor
,PhpStorm 将只显示来自子类的属性。如何同时生成构造函数:子类和父类,像这样?
public function __construct(Service1 $service1, Service2 $service2)
{
parent::__construct($service1);
$this->service2 = $service2;
}
解决方案
如何同时生成构造函数:子类和父类
目前是不可能的。
https://youtrack.jetbrains.com/issue/WI-40676 - 观看这张票(star/vote/comment)以获得任何进展的通知。
我现在能建议的最好的是:
- 在
Code | Generate...
菜单中(Alt + Insert在 Windows 键盘映射上)使用Override Methods...
选项代替。 - 然后选择
__construct()
。它将创建与父类相同的方法。 - 然后,您可以将插入符号移至该
private Service2 $service2;
行,将其放在 上$service2
,调用Alt + Enter菜单,然后选择Add constructor parameters
条目。
推荐阅读
- javascript - 如何从获取结果中加载 node-sqlite3 数据库
- mysql - 如何检查每个日期-mysql中是否存在另一列的值?
- git - git svn fetch 无缘无故地反复失败
- html - 有没有办法添加渐变而不在css中包含背景图像?
- flutter - 如何发出正确的http请求?
- homebrew - 在 brews 地窖中找不到已安装的木桶
- php - 试图让 PHP 在字典单词列表中查找用户密码?代码可以找到像 Banana123 这样的通用密码,但 BananaC123 不会返回任何内容
- node.js - 通过 id 获取元素未找到反应 postresql 节点快递
- css - 为什么我的图像不在 div 内居中?
- powershell - Powershell 脚本删除 | 来自 csv 文件