多个类 都有构造函数接受同样的参数 能优化下构造函数吗?

class A
{
    public function __construct($a,$b,$c,$d,$e){
        $this->a=$a;
        $this->b=$b;
        $this->c=$c;
        $this->d=$d;
        $this->e=$e;
    }
}
class C
{
    public function __construct($a,$b,$c,$d,$e){
        $this->a=$a;
        $this->b=$b;
        $this->c=$c;
        $this->d=$d;
        $this->e=$e;
    }
}
class D
{
    public function __construct($a,$b,$c,$d,$e){
        $this->a=$a;
        $this->b=$b;
        $this->c=$c;
        $this->d=$d;
        $this->e=$e;
    }
}

这个能简化一下吗?

《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
讨论数量: 4

这个问题在《深入PHP 面向对象、模式与实践》的继承章节,有经典的例子,父类的构造函数定义共同的属性,子类继承父类然而又有自己的属性

class P {
  public $a;
  public function __construct($a){
    $this->a = $a;
  }
}

class C1  extends P {
  public $b;
  public function __construct($a, $b){
    parent::__construct($a);
    $this->b = $b;
  }
}
2年前 评论
tiantian10000 (楼主) 2年前

继承 、 接口这些平时多用用, 还有就是顺便理解下trait 用法

2年前 评论
Tomo11111

这么多的接口参数,可以将这些参数封装为一个对象。

2年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!