新在Symfoob娱乐下载ny 3.3:内核构建方法
2017年3月17日·发表的哈维尔Eguiluz
警告:这篇文章是关于一个不受支持的Symfony的版本。ob娱乐下载其中一些信息可能是过时了。阅读最近的Symfony文档ob娱乐下载。
的包系统以来一直是一个Symfony框架的组成部分。ob娱乐下载然而,一些开发人员更喜欢在他们的应用程序不使用包除了Symfony的内置包和第三方包。ob娱乐下载
在Syob娱乐下载mfony 3.3我们决定简化通过添加一个新的build ()
方法内核
类。这种方法允许注册编译器和操作容器在建设过程中。这就是为什么这个方法很容易避免使用任何包,甚至默认AppBundle。
考虑以下初始情况你在AppBundle使一些编译器通过定义包,然后扩展加载一些配置:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
/ / src / AppBundle.php类AppBundle扩展包{公共函数构建(ContainerBuilder美元容器){美元容器- >addCompilerPass (新SomeCompilerPass ());美元容器- >addCompilerPass (新AnotherCompilerPass ());美元容器- >addCompilerPass (新YetAnotherCompilerPass ());}}/ / src / AppBundle / DependencyInjection / AppExtension.php类AppExtension扩展扩展{公共函数负载(数组美元配置,ContainerBuilder美元容器){美元二进制= ExecutableResolver::getPath (美元容器- >getParameter (“kernel.root_dir”)。“/ . . /”);美元snappyConfig= (“pdf”= > [“二元”= > realpath (美元二进制)];美元容器- >prependExtensionConfig (“knp_snappy”,美元snappyConfig);}}
在Syob娱乐下载mfony 3.3中,您可以删除AppBundle完全和定义,而不是这样build ()
方法在你的AppKernel
类:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
/ / app / AppKernel.php类AppKernel扩展内核{受保护的函数构建(ContainerBuilder美元容器){美元二进制= ExecutableResolver::getPath (美元容器- >getParameter (“kernel.root_dir”)。“/ . . /”);美元snappyConfig= (“pdf”= > [“二元”= > realpath (美元二进制)];美元容器- >prependExtensionConfig (“knp_snappy”,美元snappyConfig);美元容器- >addCompilerPass (新SomeCompilerPass ());美元容器- >addCompilerPass (新AnotherCompilerPass ());美元容器- >addCompilerPass (新YetAnotherCompilerPass ());}}
发表在#生活在边缘
评论
迈克尔COULLERET
说3月17日,2017年在19:19
为什么不。同意。
但它的一个很小的增益在单个psr-4自动装卸机线下降appbundle在src文件夹。能够做同样的事情多种方式通常与复杂的感情最终在某个时间点上,但我们将会看到
评论都关门了。
以确保评论保持相关,他们关闭了旧的帖子。
Javier Eguiluz is a certified Symfony engineer.
Get certified! Online exams available in all countries.
Register Now