0

これが私のデータの例です:

[204] => Array
    (
        [1] => Array
            (
                [leads] => 9
            )

        [2] => Array
            (
                [leads] => 15
            )

    )

[200] => Array
    (
        [1] => Array
            (
                [leads] => 7
            )

        [2] => Array
            (
                [leads] => 16
            )

        [3] => Array
            (
                [leads] => 5
            )

    )

1 | 2 | 3配列データをテーブルに出力しようとしている段階ですが、一部のサブセットにそのタイプの配列がない場合でも、列が になるようにテーブルヘッダーを動的に設定するにはどうすればよいですか?

配列は、次のようなデータベース クエリの結果から構築されます。

$dailytotals[$store][$campaigntypeid] = array('leads'=> $leads);

for each を試しましたが、すべてのサブセットにすべての列があるわけではないため、機能しないことに気付きました。

私が見つけようとしているものを取得する方法はありますか?

4

1 に答える 1

1

これを試して

$columns = array();
foreach ($your_array as $key=> $arr) {
  $columns = array_unique(array_merge($columns, array_keys($arr)));
}

別の方法

$columns = array_reduce($your_array, 
  function ($r, $val) { 
    return array_unique(array_merge($r, array_keys($val))); 
  }, 
  array()
);
于 2012-11-08T11:52:40.563 に答える