2015-09-06 103 views
0

我已经PHP数组的格式如下:如何将mysql查询数据打印到php多维数组中?

$data = array(
    array(
'label' => 'Sale', 
'color' => '#28d8b2', 
'data' => 
    array(
     array('Jan', 27), 
     array('Feb', 82), 
     array('Mar', 56), 
     array('Apr', 14), 
     array('May', 28), 
     array('Jun', 77), 
     array('Jul', 23), 
     array('Aug', 49), 
     array('Sep', 81), 
     array('Oct', 20), 
     array('Nov', 23), 
     array('Dec', 99) 
    ) 
) 
); 

,我希望把我的数据是从MySQL表中查询到子阵列上方如下:

array(
     array('Jan', 27), 
     array('Feb', 82), 
     array('Mar', 56), 
     array('Apr', 14), 
     array('May', 28), 
     array('Jun', 77), 
     array('Jul', 23), 
     array('Aug', 49), 
     array('Sep', 81), 
     array('Oct', 20), 
     array('Nov', 23), 
     array('Dec', 99) 
    ) 

我试图把那些

$get_date = dbQuery("SELECT MONTH(STR_TO_DATE(ors.order_date, '%Y-%m-%d')) AS month, SUM(ord.total_price) AS total FROM orders ors INNER JOIN order_detail ord ON (ors.order_id = ord.order_id) WHERE YEAR(STR_TO_DATE(ors.order_date, '%Y-%m-%d')) = '$year' GROUP BY month"); 
$count = $get_date->rowCount(); 
$index = 1; 
$ar = array(); 
while($row = $get_date->fetch(PDO::FETCH_ASSOC)) 
    { 
    $ar[$index] = $row; 
    $index++; 
} 
print_r($ar); 

所以我的问题是我希望把我的数据到现有的PHP数组:从MySQL数据库查询与下面的代码,但仍然不是我想要的数据我上面提到的,即使任何一个月的mysql数据库无法使用该脚本还需要给该月为0。

例如,如果在数据库中不存在任何一个月然后把数据传送到阵列这样

array(
     array('Jan', 27), 
     array('Feb', 0), 
     array('Mar', 56), 
     array('Apr', 14), 
     array('May', 0), 
     array('Jun', 77), 
     array('Jul', 0), 
     array('Aug', 0), 
     array('Sep', 81), 
     array('Oct', 0), 
     array('Nov', 23), 
     array('Dec', 0) 
    ) 

回答

0
array_push($data[0]['data'], [$month_name, $month_value]); 

Perhabs这将工作。没有测试过它。