0

小枝でこれを行うにはどうすればよいですか?

    foreach($estimate_data AS $year => $month) {
        foreach ($month AS $monthNo => $estimates) {
          $chart_data .= "['". $year ."/".$monthNo."',"; 
          foreach (array(0, 1, 3, 5, 8, 13, 20) AS $est){
              $chart_data .= (isset($estimates[$est]) ? $estimates[$est] : 0) .",";
          }
          $chart_data .= "],\n";
        }
    }

これは私がこれまでに持っているものですが、内部の foreach に苦労し、配列内の要素の存在を確認しています:

      {% for year, month in chart_data %}
        {% for month_no, estimates in month %}
          ['{{year}}/{{month_no}}',
          {% for i in [0, 1, 2, 3, 5, 8, 13, 20]  %}
            {% if estimates %}
            {{estimates[i]}} ,
            {% endif %}
          {% endfor %}
        {% endfor %}
      {% endfor %}
4

1 に答える 1

0

これを試して..

未確認!!..

{% for year, month in estimate_data %}
    {% for month_no, estimates in month %}
        {% set chart_data = chart_data ~ "['" ~ year ~ "/" ~ monthNo ~ "'," %} # concat the strings
        {% for est in [0, 1, 3, 5, 8, 13, 20] %}
            {% set chart_data = chart_data ~ (defined estimates.est) ? estimates.est : 0 ~ ',' %} # if estimates.est is defined
        {% endfor %}
        {% set chart_data = chart_data ~ "],\n" %} # concat the final string.
    {% endfor %}
{% endfor %}

編集:次 を使用して連結しようとすると、推測します:

{% set variable ~= 'text' %}

これはうまくいくはずですが、私はこれをテストしていません..

于 2013-04-29T20:08:25.080 に答える