2014-03-13 2 views
13

저는 Symfony2 프로젝트에서 템플릿 화를 위해 Twig 작업을하고 있습니다. 2 차원 배열을 정의해야합니다. 나는Twig에서 다차원 배열을 설정하는 방법은 무엇입니까?

{% 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 차원 배열을 설정하는 올바른 구문은 무엇입니까?

+1

JSON' 다음에, 나뭇 가지가 거의 당신이 변경 얼마나 그래서 같은 배열 구문 – Touki

답변

25

Twig에서 배열은 []로 표시되고 해시는 {}로 표시됩니다. 해시는 명시 적 키 (문자열 또는 정수)가있는 키 - 값 쌍입니다. 배열은 명시 적으로 정의 된 키가없는 단순한 값 집합입니다 (숫자로 인덱싱됩니다).

해시를 사용하려면 각 요소에 키를 제공해야합니다.

그럼, 당신이 원하는 것은 당신처럼 할 수있는 아마 {% set fields = [ {'name': 'description', 'value': '1'}, { 'name': 'abc', 'value': '2'}, { 'name':'tags', 'value': '3'} ] %}

+2

을 가지고'에 대해 생각하십시오 메인 키? 현재 0,1,2,3 등입니다. – stabbie

1

인이 {% set foo = {"adjuster_list": {"id": "1", "name": "Joe Smith"}} %}

+2

또는 다음과 같이하십시오. ** {% set foo = { "adjuster_list": [{ "id": 1, "name": "Joe Smith"}]} %} ** – user1529918

+0

도움이됩니다. 또는 JSON 스타일입니다. –

관련 문제