我想使用Cal-Heatmap来显示数据,我当前的sql结果以
的形式返回 [ { "dateStampSecs": "1499637600", "value": "1" } ]
但我想要
[ { "1499637600" : 1 } ]
如何将它们粘在一起?
我正在使用Codeigniter,下面是我的sql:
public function get_calData(){
$this->db->select('unix_timestamp(STR_TO_DATE(date_start, "%Y-%m-%d")) dateStampSecs,count(*) as value');
$this->db->from('calendar');
$query = $this->db->get()->result();
print json_encode($query,JSON_PRETTY_PRINT);
}
答案 0 :(得分:2)
$dateStampSecs = array_column($query, "dateStampSecs");
$value = array_column($query, "value");
$result = array_combine($dateStampSecs, $value);
print json_encode($result,JSON_PRETTY_PRINT);
答案 1 :(得分:0)
试试这个
$finalData='';
foreach ($query as $data){
$finalData[][$data['dateStampSecs']]=$data['value'];
}
$finalData=json_encode($finalData);
dd($query,$finalData);
它将输出为
答案 2 :(得分:0)
你必须像下面的
一样回应结果echo json_encode($query);
出口();
答案 3 :(得分:0)
希望它能运作
$query = json_decode($query ,true);
$query = [$query['dateStampSecs']=>$query['value']];
dd(json_encode($query));`