1

日付でグループ化されたデータの数を表す3つの配列があります$dummyArray1 = array('year' => array('month' => 'count'));

$dummyArray1 = array(
    '2012' => array(
        '1' => 13,
        '2' => 22,
        '3' => 18,
        '5' => 19
     ),
    '2011' => array(
        '1' => '4',
        '3' => 13
     )
);

$dummyArray2 = array(
    '2012' => array(
        '1' => 44,
        '4' => 34,
        '5' => 38,
        '6' => 29
     ),
    '2011' => array(
        '1' => 9,
        '2' => 11,
        '3' => 1
     )
);

$dummyArray3 = array(
    '2012' => array(
        '2' => 5,
        '4' => 3,
        '6' => 1,
        '8' => 11
     ),
    '2011' => array(
        '3' => 9,
        '4' => 14,
        '9' => 9
     )
);

これらを 1 つの配列にグループ化して、月ごとにcount各配列の値を取得する必要があります。特定の月にカウント データが存在しない場合は、そこに値0として挿入する必要がありcountます。

4

1 に答える 1

1

関数を作成すると簡単になります。

<?php

function groupMyArray($dummysArray)
{
   $result = array();
   foreach($dummysArray as $dummyArray):
      foreach($dummyArray as $year => $countarray):
          for($i = 1; $i <= 12; $i++):
              if(count($countarray[$i]) > 0){
                  $result[$year] = array($i => $countarray[$i]);
              }else{
                  $result[$year] = array($i => 0);
              }
          endfor;
      endforeach;
   endforeach;

   return $result;
}

OK、$dummyArrayを作成する必要があることを知っています。

$dummyArray = array(
    $dummyArray1,
    $dummyArray2,
    $dummyArray3
);


$dummyArraygroup = groupMyArray($dummyArray);

?>

于 2012-12-02T01:06:02.563 に答える