Php 扩展构造函数而不指定参数

Php 扩展构造函数而不指定参数,php,class,constructor,extend,Php,Class,Constructor,Extend,我有一个Field类,它必须在其他不同的字段上进行多次扩展,我们称它们为ChildFieldOne和ChildFieldTwo,依此类推 其中一些子字段不需要声明_构造函数,因为它与扩展字段类相同。但是他们中的许多人必须是自己的构造函数才能执行额外的操作 class Field { public function __construct(string $name, array $parameters = [], int $index = 0) { ... do Field

我有一个Field类,它必须在其他不同的字段上进行多次扩展,我们称它们为ChildFieldOne和ChildFieldTwo,依此类推

其中一些子字段不需要声明_构造函数,因为它与扩展字段类相同。但是他们中的许多人必须是自己的构造函数才能执行额外的操作

class Field
{
   public function __construct(string $name, array $parameters = [], int $index = 0)
   {
      ... do Field stuff
   }
}

class ChildFieldOne extends Field
{
}


class ChildFieldTwo extends Field
{
   public function __construct(string $name, array $parameters = [], int $index = 0)
   {
      parent::__construct($name, $parameters, $index)
      
      ... do ChildFieldTwo extra stuff
   }
}
假设我必须在字段的构造函数中添加一个新参数,我还必须手动将它们添加到每个子类中。我有大约20个扩展类,它们有自己的构造函数,调用父类,然后做自己的事情。在每个类上添加一个“Field$parent=null”是一个混乱

class Field
{
   public function __construct(string $name, array $parameters = [], int $index = 0, Field $parent = null)
   {
      ... do Field stuff
   }
}

class ChildFieldTwo extends Field
{
   public function __construct(string $name, array $parameters = [], int $index = 0, Field $parent = null)
   {
      parent::__construct($name, $parameters, $index, $parent)
      
      ... do ChildFieldTwo extra stuff
   }
}
有没有像这样声明扩展类的方法

class ChildFieldTwo extends Field
{
   public function __construct(... $args)
   {
      parent::__construct($args)
      
      ... do ChildFieldTwo extra stuff
   }
}
我尝试了类似的方法,但由于$args是数组,所以在字段类型差异方面出现了错误。我怎么能做我需要的