如何使用编译器通过包
编辑该页面警告:你浏览的文档欧宝官网下载appob娱乐下载Symfony 2.4,不再维护。
读这个页面的更新版本Symfob娱乐下载ony 6.2(当前的稳定版本)。
如何使用编译器通过包
编译器传递给你一个机会来操作其他已注册的服务定义服务容器。你可以阅读关于如何创建组件部分”编译的容器”。注册一个编译器从一个包你需要将它添加到构建包定义类的方法:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
/ / src / Acme / MailerBundle / AcmeMailerBundle.php名称空间Acme\MailerBundle;使用ob娱乐下载\组件\HttpKernel\包\包;使用ob娱乐下载\组件\DependencyInjection\ContainerBuilder;使用Acme\MailerBundle\DependencyInjection\编译器\CustomCompilerPass;类AcmeMailerBundle扩展包{公共函数构建(ContainerBuilder美元容器){父::构建(美元容器);美元容器- >addCompilerPass (新CustomCompilerPass ());}}
编译器的一个最常见的用例是使用标记服务(阅读更多关于标签的组件部分的“使用标记服务”)。如果您正在使用自定义标记的包然后按照惯例,标记名称包含包的名称(小写字母,下划线分隔符),紧随其后的是一个点,最后“真实”的名字。例如,如果你想介绍一些AcmeMailerBundle“运输”标签,你应该叫它acme_mailer.transport
。
这项工作,包括代码示例,许可下Creative Commons冲锋队3.0许可证。