假设这种情况:
interface IFoo
{
public function Bar();
}
trait Foo
{
public function Bar()
{
echo 'Bar';
}
}
class FooBar implements IFoo
{
use Foo;
}
$foobar = new FooBar();
$foobar->Bar(); //echos 'Bar';
我将类 FooBar 放在它自己的文件中,接口 IFoo 也在它自己的文件中。
但是我应该如何处理特质 Foo:
- 在自己的文件中?(我的偏好)
- 连同inferface IFoo?
- 当 trait 有自己的文件时,自动加载将如何处理呢?
注意:netbeans 将类 FooBar 的代码标记为无效。Netbeans 没有检测到特征 Foo 用于实现 IFoo。漏洞?