我想在TWIG中生成动态变量并获取值

时间:2015-09-26 13:47:48

标签: twig

我想设置动态变量并获取该变量的值。我把“orderDetails”传递给了我的树枝模板。

    $customerProfile = array(
      'ns1' => $customerProfile->getNs1(),
      'ns2' => $customerProfile->getNs2(),
      'custId' => $customerProfile->getCustId()
)

return $this->render('PortalBundle::popup.html.twig', array(
            'orderDetails' => $customerProfile
        ));

获取像{{orderDetails.ns1}},{{orderDetails.ns2}}这样的变量,但我有15到16个这样的变量,我想在循环中获取这个变量。

我有这样的代码

{% for i in 1..13 %}
     {% set nsOrd = 'orderDetails.ns'~i %}
          {% if nsOrd %}
                {{nsOrd}}
          {% endif %}
{% endfor %}

我想获取变量{{orderDetails.ns1}}等。给我你的建议。

1 个答案:

答案 0 :(得分:0)

感谢Yoshi,我对数组中的变量感到厌烦。感谢您的支持,我发现并使用此功能成功获得输出。

{% for i in 1..13 %}
     {% if orderDetails['ns' ~ i] is defined %}
           {{orderDetails['ns' ~ i]}}
     {% endif %}
{% endfor %}