【发布时间】:2018-01-27 11:47:49
【问题描述】:
Laravel 有没有通过方法引入依赖的能力?
例如,我有一个实现DoctrineWorkable 接口的控制器:
interface DoctrineWorkable {
public function setEntityManager(EntityManager $manager);
}
trait EntityManagerTrait {
protected $manager;
public function setEntityManager(EntityManager $manager) {
$this->manager = $manager;
// Other work with $manager
}
}
class TestController implements DoctrineWorkable {
use EntityManagerTrait;
}
如何在服务容器中使用setEntityManager 方法?要得到这样的东西:
if ($class instanceof DoctrineWorkable) {
$class->setEntityManager(new EntityManager());
}
附言抱歉英语不好))
【问题讨论】:
-
我认为您可能正在寻找“绑定”...也许? laravel.com/docs/5.0/container#contextual-binding
标签: php laravel design-patterns