php导入类中的特征

时间:2013-11-22 02:07:47

标签: php class import traits

我想知道我是否可以动态导入特征并应用于父类。

trait A{
 function a(){}
}

class B{
  //use A   <-no import here

  function b(){
     //Define if need trait A

     // Import A and apply to B <- Possible?
  }
}

非常感谢您的建议!

1 个答案:

答案 0 :(得分:2)

不,你不能。特性是该类的一个特征,而php在那里猛拉它,必须同时解决冲突(或发现它们没有被解决),所以你在类中定义它,就是这样。

你真的不得不问问自己是否要像这样使用它们。如果一个类可能有也可能没有特性,它真的是一个类吗?你正确使用这个特质吗?很难说没有你的用例,但我敢说这几乎总是代码味道。

如果你以一种好的方式使用特征,你可以将它们用于全班吗?