jjzjj

ContainerBuilder

全部标签

php - 在编译器传递中使用服务时类不存在

我注意到一些奇怪的行为甚至可能是symfony中的错误?我不知道……这里是重现的步骤:1。安装symfony我全新安装了symfony3.1.3,使用cli安装程序安装:$symfonynewmyproject2。添加一些服务我在app/config/services.yml中添加了一个服务定义:services:app.helper:class:AppBundle\Service\AppHelperarguments:["@service_container"]并且我添加了相应的服务类:container=$container;$this->em=$this->container->

php - 如何在symfony2中添加自己的自定义服务容器标签,以及如何获取标签服务?

现在我可以标记服务,例如:form.type女巫通知表单组件使用此服务作为表单类型。我找不到这方面的任何文档,我该如何定义自己的标签?并获取所有标有它的服务?或者甚至将所有标记有我的标签的服务作为参数传递给另一个服务? 最佳答案 好的,我找到了答案,基本上标签是由实现CompilerPassInterface的类处理的,可以在bunlde文件中添加编译器传递对象(例如:Symfony\Bundle\FrameworkBundle\FrameworkBundle见方法build)CompilerPass有方法process接收Cont