【发布时间】:2013-12-06 18:59:05
【问题描述】:
我想知道我是否可以动态导入特征并应用于父类。
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?
}
}
非常感谢您的建议!
【问题讨论】:
我想知道我是否可以动态导入特征并应用于父类。
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?
}
}
非常感谢您的建议!
【问题讨论】:
不,你不能。 trait 是类的一个特性,php 将它拉到那里,必须一次性解决冲突(或发现它们没有解决),所以你在类中定义它,就是这样。
您确实必须问自己是否要像这样使用它们。如果一个类可能有也可能没有特征,它真的是一个类吗?你是否正确使用了这个特征?很难说没有你的具体用例,但我敢猜测这几乎总是一种代码气味。
如果您以一种好的方式使用特征,您可能可以将它们用于整个班级?
【讨论】: