与Twig symfony的动态变量连接

时间:2015-03-05 09:19:00

标签: php symfony twig

我有一个特殊的问题与树枝的连接。 当我尝试连接显示错误的动态变量时。 这是我的代码:

{% set i = 0 %}
{% set nbLignes = codeEvt.nb_lignes_~i %}
{% set nbLignesRef = codeEvt.nb_lignes_ref_~i %}

但是我有这样的错误信息:

  

方法" nb_lignes _" for object" \ DTO \ SuiviJourFonc"第XXX行的XXXXXXXXX.html.twig中不存在

我想采取 codeEvt.nb_lignes_0 ,但我想建立一个" for"对于其他变量,如nb_lignes_1, nb_lignes_2 , nb_lignes_3 ...

我该怎么做?

2 个答案:

答案 0 :(得分:5)

attribute可用于访问变量的 dynamic 属性: 属性函数已添加到Twig 1.2中。

{{ attribute(object, method) }}

{{ attribute(object, method,arguments) }}

{{ attribute(array, item) }}

试试这个,

{{ attribute(codeEvt, 'nb_lignes_ref_' ~ i) }}

答案 1 :(得分:0)

您可以尝试类似数组的表示法:

{{ codeEvt['nb_lignes_ref_' ~ i] }}

甚至使用字符串插值:

{{ codeEvt["nb_lignes_ref_#{i}"] }}