Php 让IDE在调用静态方法时动态引用构造函数

Php 让IDE在调用静态方法时动态引用构造函数,php,Php,假设我有一个父类和一个子类,如下所示: 类组件{ 公共函数构造(字符串$string) { //... } } 类ChildComponent扩展组件{ 公共函数构造(字符串$string,数组$args) { //... } } 现在我想实现一个静态方法来实例化类,如下所示: 类组件{ 公共函数构造(字符串$string) { //... } 公共静态函数create(…$args):静态 { 返回新的静态(…$args); } } 有没有办法让IDE建议static::class的预期参

假设我有一个父类和一个子类,如下所示:

类组件{
公共函数构造(字符串$string)
{
//...
}
}
类ChildComponent扩展组件{
公共函数构造(字符串$string,数组$args)
{
//...
}
}
现在我想实现一个静态方法来实例化类,如下所示:

类组件{
公共函数构造(字符串$string)
{
//...
}
公共静态函数create(…$args):静态
{
返回新的静态(…$args);
}
}
有没有办法让IDE建议static::class的预期参数(即使只有构造函数注释),可能是PHP8属性?这就是我想要的:


Component::create()//IDE引用“Component”的构造函数(应为$string)
ChildComponent::create()//IDE引用“子组件”的构造函数(需要$string和$array)
请避免“

你为什么要这么做

只需在每个子级上定义“静态创建”


编辑:“new”方法重命名为“create”为了清晰起见

父类和子类与引用
静态
类有什么关系?我的意思是,IDE知道上下文,并引用静态调用的类构造函数,而不是“new”“从父类.Oops,我没有意识到
newstatic()
是一个特例,没有创建名为
static
的类的实例。