如何在课堂上多次使用特质?

时间:2012-11-27 10:21:31

标签: php traits

以下代码:

trait T {
    function foo() {}
}

class C {
    use T { T::foo as bar; }
    use T { T::foo as baz; }
}

产生以下错误:

  

尚未应用特征方法栏,因为存在碰撞   与C

上的其他特征方法

是否可以在课堂上使用两次特质?

2 个答案:

答案 0 :(得分:6)

要使用不同的名称多次“导入”特征中定义的方法,请执行以下操作:

class C {
  use T {
    foo as bar;
    foo as baz;
  }
}

答案 1 :(得分:0)

是的,您可以使用两次特征:

trait T {
    function foo() {}
}

class C {
    use T { T::foo as bar; T::foo as baz; }
}