在trait中执行构造函数

时间:2017-12-18 10:25:28

标签: php traits

我不想在我的特性中执行构造函数(或者在使用特征时使用其他方法)。有可能吗?

trait test{
    public function __construct()
    {
        echo 'test';
    }
}

class myClass{
    use test;
    public function __construct(){
        echo 'myClass';
    }
}
new myClass();

1 个答案:

答案 0 :(得分:7)

尝试这样(test):

trait test{
    public function __construct()
    {
        echo 'test';
    }
}

class myClass{
    use test {
        test::__construct as private __tConstruct;
    }
    public function __construct(){
        $this->__tConstruct();
    }
}
new myClass();