【发布时间】:2015-09-06 14:37:56
【问题描述】:
我有以下格式的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)
)
我尝试将那些从 mysql 数据库查询的数据放入以下代码,但仍然不是我想要的:
$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 数据库中没有任何月份,脚本仍然需要将该月份设为 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)
)
【问题讨论】:
标签: php mysql arrays multidimensional-array