Php 在模板中使用全局变量包括
我需要在include中使用一个全局定义的变量$LANG,以便根据用户语言选择好的文件 我的变量定义如下:Php 在模板中使用全局变量包括,php,twig,Php,Twig,我需要在include中使用一个全局定义的变量$LANG,以便根据用户语言选择好的文件 我的变量定义如下: // File : index.php // Twig is defined earlier $twig->addGlobal('lang', $LANG); // File : body.html <div id="svg"> {% include 'svg/mysvg-'.lang.'.svg' %} </div> //文件:index.ph
// File : index.php
// Twig is defined earlier
$twig->addGlobal('lang', $LANG);
// File : body.html
<div id="svg">
{% include 'svg/mysvg-'.lang.'.svg' %}
</div>
//文件:index.php
//细枝在前面定义过
$twig->addGlobal('lang',$lang);
//文件:body.html
{%include'svg/mysvg-'.lang..svg%}
当我试图在include中使用该变量时,是否可以使用该变量?它不是这样工作的。我找到了方法:
{% include (lang == 'fr') ? 'svg/mysvg-fr.svg' : 'svg/mysvg-de.svg' %}
via:我认为你应该能够像你在问题中那样做。但是,将细枝中的字符串连接起来并不是使用
和~
的byt
{% include 'svg/mysvg-' ~ lang ~ '.svg' %}
您将全局
lang
添加到了twig,但在模板中您试图使用lang
访问它!?编辑,错误抱歉。谢谢,比我的答案更好更干净!