Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/279.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 细枝:在对象数组上循环_Php_Twig - Fatal编程技术网

Php 细枝:在对象数组上循环

Php 细枝:在对象数组上循环,php,twig,Php,Twig,我想知道是否有任何方法可以使用Twig循环到这样一个结构: {% set languages = [ {"english": "en"}, {"spanish": "es"}, {"italian": "it"}, {"german": "de"}, {"french": "fr"}, {"portuguese": "pt"}, ] %} {% for value in languages %} Language: {{value.?

我想知道是否有任何方法可以使用Twig循环到这样一个结构:

{%
  set languages = [
    {"english": "en"},
    {"spanish": "es"},
    {"italian": "it"},
    {"german": "de"},
    {"french": "fr"},
    {"portuguese": "pt"},
  ]
%}

{% for value in languages %}
  Language: {{value.??}} - Locale: {{value.??}}
{% endfor %}
我不喜欢为了让属性名为。。。有什么办法可以做到这一点

同时,我对结构进行了如下修改,以使用简单的键值循环:

{%
  set languages = {
    "english": "en",
    "spanish": "es",
    "italian": "it",
    "german": "de",
    "french": "fr",
    "portuguese": "pt"
  }
%}

我有一些非常肮脏但有效的解决方案:

{% for value in languages|keys %}
    Language: {{ languages[value]|keys|first }} - Locale: {{ languages[value]|first }}
{% endfor %}

也可以使用相同的键/值对在对象上循环:

{%
  set languages = [
    {"english": "en"},
    {"spanish": "es"},
    {"italian": "it"},
    {"german": "de"},
    {"french": "fr"},
    {"portuguese": "pt"},
  ]
%}

{% for value in languages %}
  {% for k, v in value %}
    Language: {{k}} - Locale: {{v}} <br />
  {% endfor %}
{% endfor %}

{# output:
  Language: english - Locale: en
  Language: spanish - Locale: es
  Language: italian - Locale: it
  Language: german - Locale: de
  Language: french - Locale: fr
  Language: portuguese - Locale: pt 
#}
{%
设置语言=[
{“英语”:“恩”},
{“西班牙语”:“es”},
{“意大利语”:“它”},
{“德语”:“德”},
{“法语”:“法语”},
{“葡萄牙语”:“pt”},
]
%}
{%表示语言中的值%}
{k的百分比,v的值为%}
语言:{{k}}-Locale:{{v}}
{%endfor%} {%endfor%} {#输出: 语言:英语-地区:英语 语言:西班牙语-地区:es 语言:意大利语-地点:it 语言:德语-地区:de 语言:法语-地区:法语 语言:葡萄牙语-地区:pt #}
这是一个多么肮脏的把戏,它很管用,但达米恩有一个更好的解决方案!:)是的,我很惭愧我贴了这样的东西…:啊哈,只是不要这样:有时候需要一些古怪的事情来结束一天。幸运的是,我的大脑又恢复了工作,并提出了一个更好的解决方案:)很好!但是,为了避免开销,我将结构更改为一个简单的字典。谢谢你,唐宁街的选民,解释他的-1?这是一个干净的解决方案,在细枝上完全有效