0

私は次のような配列を持っています: var_export():

配列 ( 2009 => 配列 ( '1 月' => 配列 ( 'AMT' => '79', '数量' => '886', ), '4 月' => 配列 ( 'AMT' => '0', 'QTY' => '1', ), 'May' => 配列 ( 'AMT' => '19', 'QTY' => '216', ), 'Jun' => 配列 ( 'AMT' => '5', 'QTY' => '60', ), 'Sep' => 配列 ( 'AMT' => '20', 'QTY' => '196', ), 'Oct' => 配列 ( ' AMT' => '0', 'QTY' => '1', ), 'Feb' => 配列 ( 'AMT' => 0, 'QTY' => 0, ), 'Mar' => 配列 ( ' AMT' => 0, 'QTY' => 0, ), '7月' => 配列 ( 'AMT' => 0, 'QTY' => 0,)、'8 月' => 配列 ('AMT' => 0、'数量' => 0、)、'11 月' => 配列 ('AMT' => 0、'数量' => 0、)、'12 月' => 配列 ( 'AMT' => 0, '数量' => 0, ), ), 2010 => 配列 ( '3月' => 配列 ( 'AMT' => '12', '数量' => ' 131', ), '4月' => 配列 ( 'AMT' => '0', '数量' => '1', ), '6月' => 配列 ( 'AMT' => '6', '数量' => '65', ), '7月' => 配列 ( 'AMT' => '24', '数量' => '205', ), '8月' => 配列 ( 'AMT' => '20 ', '数量' => '169', ), '9 月' => 配列 ('AMT' => '0', '数量' => '1', ),'10 月' => 配列 ('AMT' => '106', '数量' => '1118', ), '11 月' => 配列 ('AMT' => '85', '数量' => '902 ', ), '12 月' => 配列 ( 'AMT' => '0', '数量' => '2', ), '1 月' => 配列 ('AMT' => 0, '数量' => 0, ), '2 月' => 配列 ('AMT' => 0, '数量' => 0, ), '5 月' => 配列 ('AMT' => 0, '数量' => 0, ), ), 2011 => 配列 ( '3 月' => 配列 ( 'AMT' => '0', '数量' => '3', ), '9 月' => 配列 ( 'AMT' => '74', 'QTY' => '582', ), 'Oct' => 配列 ( 'AMT' => '6', 'QTY' => '60', ),'11 月' => 配列 ('AMT' => '46', '数量' => '462', ), '1 月' => 配列 ('AMT' => 0, '数量' => 0, ), 'Feb' => 配列 ( 'AMT' => 0, 'QTY' => 0, ), 'Apr' => 配列 ( 'AMT' => 0, 'QTY' => 0, ), 'May' = > array ( 'AMT' => 0, 'QTY' => 0, ), 'Jun' => array ( 'AMT' => 0, 'QTY' => 0, ), 'Jul' => array ( ' AMT' => 0, '数量' => 0, ), '8 月' => 配列 ('AMT' => 0, '数量' => 0, ), '12 月' => 配列 ('AMT' => 0, '数量' => 0, ), ), )array ( 'AMT' => 0, 'QTY' => 0, ), 'Feb' => array ( 'AMT' => 0, 'QTY' => 0, ), 'Apr' => array ( 'AMT' ' => 0, 'QTY' => 0, ), 'May' => 配列 ( 'AMT' => 0, 'QTY' => 0, ), 'Jun' => 配列 ( 'AMT' => 0 , '数量' => 0, ), '7 月' => 配列 ('AMT' => 0, '数量' => 0, ), '8 月' => 配列 ('AMT' => 0, '数量' => 0, ), '12 月' => 配列 ('AMT' => 0, '数量' => 0, ), ), )array ( 'AMT' => 0, 'QTY' => 0, ), 'Feb' => array ( 'AMT' => 0, 'QTY' => 0, ), 'Apr' => array ( 'AMT' ' => 0, 'QTY' => 0, ), 'May' => 配列 ( 'AMT' => 0, 'QTY' => 0, ), 'Jun' => 配列 ( 'AMT' => 0 , '数量' => 0, ), '7 月' => 配列 ('AMT' => 0, '数量' => 0, ), '8 月' => 配列 ('AMT' => 0, '数量' => 0, ), '12 月' => 配列 ('AMT' => 0, '数量' => 0, ), ), )=> 0, 'QTY' => 0, ), 'Jun' => 配列 ( 'AMT' => 0, 'QTY' => 0, ), 'Jul' => 配列 ( 'AMT' => 0, '数量' => 0, ), '8 月' => 配列 ('AMT' => 0, '数量' => 0, ), '12 月' => 配列 ('AMT' => 0, '数量' = > 0, ), ), )=> 0, 'QTY' => 0, ), 'Jun' => 配列 ( 'AMT' => 0, 'QTY' => 0, ), 'Jul' => 配列 ( 'AMT' => 0, '数量' => 0, ), '8 月' => 配列 ('AMT' => 0, '数量' => 0, ), '12 月' => 配列 ('AMT' => 0, '数量' = > 0, ), ), )

ネストされた配列が 1 つだけの配列を使用し、次のようなテーブルにデータを表示しています。

foreach($results as $key => $element){
    echo "<tr>";
    foreach($element as $subkey => $subelement){
        echo "<td width='20%'>$subelement</td>";
    }
    echo "</tr>";
}

ただし、今は年 (2009,2010,2011) があり、それをテーブルに入れる方法がわかりません。Month、Amt、Qty を表示する前に... したがって、上記の foreach です。

次のように表示したいと思います。

年 | 年 | 月 | 月 | 金額 | 数量

if(2009){show $subelement} タイプのアイデアの if ステートメントで年をキャプチャしようとしていました...

4

1 に答える 1

2

年をループするには、おそらく外側のループが必要になるでしょう。テーブル ヘッダーが既に作成されていると仮定すると、次のようになります。

foreach($results as $year => $year_data) {
    foreach ($year_data as $month => $month_data) {
        echo "<tr><td>$year</td><td>$month</td><td>{$month_data['AMT']}</td><td>{$month_data['QTY']}</td></tr>";
    }
}
于 2013-02-06T00:31:19.693 に答える