据我所知,PHP特性存在提供伪多重继承...并且查看它们,它们更让我想起结构,除了返回类型与函数相同。
无论如何 - 对于我不能用界面或其他功能做的特性我该怎么办?
答案 0 :(得分:1)
特征不携带任何类型信息,因此与界面没有任何共同之处。
class Test implements TestInterface {
use TestTrait;
}
$x = new Test;
var_dump( $x instanceof TestInterface ); // true
var_dump( $x instanceof TestTrait ); // false
总而言之,traits是一种重复代码的方法,无需借助复制粘贴。