0

据我所知,PHP 特征的存在是为了提供伪多继承......并且看着它们,它们宁愿让我想起结构,除了返回类型与函数相同。

无论如何 - 我可以用一个我已经不能用一个接口做的特征做些什么,或者只是另一个函数?

4

1 回答 1

1

特征不携带任何类型信息,因此与接口没有任何共同之处。

class Test implements TestInterface {
   use TestTrait;
}

$x = new Test;
var_dump( $x instanceof TestInterface );  // true
var_dump( $x instanceof TestTrait );      // false

总而言之,特征是一种无需复制粘贴即可重复代码的方式。

于 2013-08-09T15:01:55.110 回答