2016-07-20 1 views
1

J'utilise Twig avec PHP. J'ai une configuration de tableau multidimensionnel comme ceci:Multidimensional Array in Twig

Array 
(
[Special] => Array 
    (
     [277] => Array 
      (
       [name] => First Item 
       [quantity] => 1 
       [price] => 0 
      ) 

     [276] => Array 
      (
       [name] => Second Item 
       [quantity] => 11 
       [price] => 0 
      ) 

     [278] => Array 
      (
       [name] => Third Item 
       [quantity] => 2 
       [price] => 0 
      ) 

    ) 

[Technical] => Array 
    (
     [14] => Array 
      (
       [name] => First Item 
       [quantity] => 1 
       [price] => 1 
      ) 
    ) 
[Books] => Array 
    (
     [169] => Array 
      (
       [name] => First Item 
       [quantity] => 2 
       [price] => 100 
      ) 

     [361] => Array 
      (
       [name] => Second Item 
       [quantity] => 1 
       [price] => 2 
      ) 
    ) 
) 

Je dois pouvoir faire défiler chacune des touches du premier tableau (spécial, technique, livres) et imprimer ces en-têtes de catégorie. J'ai été en mesure de le faire en utilisant:

{% for type, items in data %} 
{{ type }} 
{% endfor %} 

Cette partie fonctionne très bien. Ce qui me pose problème, c'est comment faire une boucle sur les éléments de chaque catégorie et les imprimer? La sortie devrait être comme ceci:

Special 
    - 277 
     - {name}, {quantity}, {price} 
    - 276 
     - {name}, {quantity}, {price} 
Technical 
    - 14 
     - {name}, {quantity}, {price} 
... 

Comment est-ce que je peux produire de telles données?

Répondre

0

Essayez ceci:

{% for type, items in data %} 
    {{ type }} 

    {% for key, value in items %} 
     - {{ key }} 
      - {{ value.name }}, {{ value.quantity }}, {{ value.price }} 
    {% endfor %} 
{% endfor %} 
+0

Merci, qui fonctionne. –