如何在多维数组中存储多个值

时间:2015-10-19 10:45:13

标签: php arrays symfony twig

我需要什么

  • 我需要添加多个键,数组中的值。

代码

  {% set industry_get=value.industry_merge|split(',') %}
  {% set newArray = [] %}

    {% for key, value2 in industry_get if break %}

   {% set newArray = newArray|merge({ 'name': industryarray[value2]['name'], 'url': industryarray[value2]['url'],'published': industryarray[value2]['published'] }) %}

     {%endfor%}

问题

  • 在这段代码中,让循环执行3次。

       array(3) { 
    
    [0]=> string(1) "3" 
    [1]=> string(2) "11" 
     [2]=> string(2) "18"
        } ........ 1 2 3
    
  • 但它存储了最后一个索引的值,即(18)

          array(3) 
       {
         ["name"]=> string(14) "Gems & Jewelry"
        ["url"]=> string(12) "gems-jewelry" 
         ["published"]=> string(1) "1"
          }
    
  • 我尝试过loop.index,但它无法正常工作

代码

         {% set newArray = newArray|merge({ (loop.index): {'name':industryarray[value2]['name']} }) %}

它做得很好,但问题是它的循环的最后一次迭代的存储值,因为它没有任何键。

我想做的事情是

     {% set newArray[0]['name'] = newArray|merge({ (loop.index):       {'name':industryarray[value2]['name']} }) %} 

   {% set newArray[1]['name'] = newArray|merge({ (loop.index): {'name':industryarray[value2]['name']} }) %} 

。 。 。 等等.... 但我不知道该怎么做

  • 然后数据将以索引格式存储。

  • 任何建议都欢迎

最后经过难以言喻的解决方案

  • {%set newArray = newArray | merge({(loop.index):industryarray [value2]})%}

0 个答案:

没有答案