如何将变量注入所有模板(如全局变量)
编辑该页面警告:你浏览的文档欧宝官网下载appob娱乐下载Symfony 2.3,不再维护。
读这个页面的更新版本Symfob娱乐下载ony 6.3(当前的稳定版本)。
< /div>如何将变量注入所有模板(如全局变量)
有时你想要访问一个变量的所有模板使用。这是可能的在你应用程序/配置/ config.yml
文件:
1 2 3 4 5
# app / config / config.yml枝:#……全局变量:ga_tracking:UA-xxxxx-x
1 2 3 4 5
< !——app / config / config。xml - - ><枝:配置>< !——……- - ><枝:全球关键=“ga_tracking”>UA-xxxxx-x< /枝:全球>< /枝:配置>
1 2 3 4 5 6 7
/ / app / config / config . php美元容器- >loadFromExtension (“树枝”,数组(/ /……“全局”= >数组(“ga_tracking”= >“UA-xxxxx-x”)));
现在,该变量ga_tracking
可用在所有树枝模板:
1
<p>谷歌的跟踪代码是:{{ga_tracking}}< /p>
它是那么容易!
使用服务容器参数
你也可以利用内置的服务容器系统,它可以隔离或重用的价值:
1 2 3
# app / config / parameters.yml参数:ga_tracking:UA-xxxxx-x
1 2 3 4
# app / config / config.yml枝:全局变量:ga_tracking:“% ga_tracking %”
1 2 3 4
< !——app / config / config。xml - - ><枝:配置><枝:全球关键=“ga_tracking”>% ga_tracking %< /枝:全球>< /枝:配置>
1 2 3 4 5 6
/ / app / config / config . php美元容器- >loadFromExtension (“树枝”,数组(“全局”= >数组(“ga_tracking”= >“% ga_tracking %”)));
相同的变量完全可用。
< /div>引用服务
而不是使用静态值,您还可以将值设置为一个服务。只要模板中访问全局变量,该服务将请求从服务容器,你可以访问这个对象。
请注意
服务不是装载。换句话说,当树枝被加载,您的服务被实例化,即使你不使用全局变量。
< /div>定义一个服务作为全球树枝变量,前缀字符串@
。这应该感到熟悉,因为它在服务配置相同的语法使用。
1 2 3 4 5
# app / config / config.yml枝:#……全局变量:user_management:“@app.user_management”
1 2 3 4 5
< !——app / config / config。xml - - ><枝:配置>< !——……- - ><枝:全球关键=“user_management”>@app.user_management< /枝:全球>< /枝:配置>
1 2 3 4 5 6 7
/ / app / config / config . php美元容器- >loadFromExtension (“树枝”,数组(/ /……“全局”= >数组(“user_management”= >“@app.user_management”)));
这项工作,包括代码示例,许可下Creative Commons冲锋队3.0许可证。