我想知道。我在Symfony2 TranslationLoader类中找到了这个:
public function addLoader($format, LoaderInterface $loader)
{
$this->loaders[$format] = $loader;
}
我发现LoaderInterface
只有一种方法。但是我们怎么知道这个界面的实现呢?这是接口注入?
答案 0 :(得分:1)
接口注入is a thing,但您在代码段中看到的确实是Type Hinting,strong typing的形式。
这样做,是在运行时强制传递给$loader
的值必须与类型提示中指定的接口(或类)的定义相匹配。基本上,这个问题的答案是:
$loader
是否实现了LoaderInterface
的所有方法?
如果没有,您将获得catchable fatal error。