如何在Twig中设置多维数组?

时间:2014-03-13 08:53:22

标签: php symfony twig

我正在使用Twig在我的Symfony2项目中进行模板化。我需要定义一个二维数组。我试过像

{% set fields = { {'name': 'description', 'value':  '1'}, { 'name': 'abc', 'value': '2'}, { 'name':'tags', 'value': '3'} } %}

但是我得到了

A hash key must be a quoted string, a number, a name, or an expression enclosed in parentheses (unexpected token "punctuation" of value "{" in ABundle:XYZ:edit_a_page.html.twig at line 51  

不确定上述代码有什么问题。

在树枝中设置二维数组的正确语法是什么?

2 个答案:

答案 0 :(得分:31)

在Twig中,数组用[]标记,哈希用{}标记。散列是具有显式键(字符串或整数)的键值对,数组只是一组没有任何明确定义键的值(它们将以数字方式索引)。

为了使用散列,你必须为每个元素提供一个键。

所以,你想要的可能是{% set fields = [ {'name': 'description', 'value': '1'}, { 'name': 'abc', 'value': '2'}, { 'name':'tags', 'value': '3'} ] %}

答案 1 :(得分:2)

你可以这样做 {% set foo = {"adjuster_list": {"id": "1", "name": "Joe Smith"}} %}