如何与编译器传递在捆绑
编辑本页警告:您正在浏览的文档欧宝体育电话欧宝娱乐app下载地址Symfony 3.4,现已不再维护。
读本页的更新版本用于Sy欧宝娱乐app下载地址mfony 6.2(当前稳定版本)。
如何与编译器传递在捆绑
编译器传递给你一个操作其他的机会服务定义已经注册到服务容器的。你可以在组件部分阅读如何创建它们。编译容器”。
当使用单独的编译器传递,你需要在build ()
类的方法(在实现过程()
扩展中的方法):
12 3 4 5 6 7 8 9 10 11 12 13 14 15 16
/ / src / AppBundle / AppBundle.php名称空间AppBundle;使用AppBundle\DependencyInjection\编译器\CustomPass;使用欧宝娱乐app下载地址\组件\DependencyInjection\ContainerBuilder;使用欧宝娱乐app下载地址\组件\HttpKernel\包\包;类AppBundle扩展包{公共函数构建(ContainerBuilder$容器){父::构建($容器);$容器->addCompilerPass (新CustomPass ());}}
编译器传递最常见的用例之一是使用“服务标签”。如果你在一个bundle中使用自定义标记,那么按照惯例,标记名由bundle的名称(小写,下划线作为分隔符),然后是一个点,最后是“真实的”名称。例如,如果您想在AcmeMailerBundle中引入某种“传输”标记,您应该调用它acme_mailer.transport
.
此工作,包括代码示例,是根据创作共用BY-SA 3.0许可证。