在模板中使用全局变量包括

时间:2014-07-10 10:39:42

标签: 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> 

我可以使用变量,因为我试图在include中使用它吗?它不会像这样工作。

2 个答案:

答案 0 :(得分:1)

我认为你应该像你在问题中那样做。但是在Twig中连接字符串并不是.~一起使用。

{% include 'svg/mysvg-' ~ lang ~ '.svg' %}

答案 1 :(得分:0)

我找到了怎么做:

{% include  (lang == 'fr') ? 'svg/mysvg-fr.svg' : 'svg/mysvg-de.svg' %}    

via:http://twig.sensiolabs.org/doc/tags/include.html