Twig Symfony中使用动态变量进行字符串连接

3

我有一个关于Twig的“concat”函数的特定问题。当我尝试连接动态变量时,会显示错误。以下是我的代码:

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

我有以下错误信息:

"\DTO\SuiviJourFonc" 的对象中不存在方法 "nb_lignes_",在 XXXXXXXXX.html.twig 的第 211 行

我想要使用 codeEvt.nb_lignes_0 ,但我希望可以为其他变量像 nb_lignes_1、nb_lignes_2、nb_lignes_3... 建立一个循环。
请问该如何实现?
2个回答

6

attribute 可以用于访问变量的 动态 属性: attribute 函数在 Twig 1.2 版本中添加。

{{ attribute(object, method) }}

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

{{ attribute(array, item) }}

尝试像这样:

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

0
你可以尝试使用类似数组的符号表示法:
{{ codeEvt['nb_lignes_ref_' ~ i] }}

甚至可以使用字符串插值:

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

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接