我如何实现我的代码以获取正确的json?

时间:2019-05-13 09:08:09

标签: php json chart.js

我正在尝试在PHP中创建一个JSON字符串以填充图表(chart.js)。我必须如何实现PHP代码才能使用它?抱歉,我是PHP新手,我现在尝试学习它...

我的数据集:

  

名称|金额|年
  NAME1 | 10 | 2019
  NAME2 | 50 | 2019
  NAME3 | 70 | 2019
  NAME4 | 90 | 2019
  NAME1 | 1410 | 2018
  NAME2 | 155,3 | 2018
  NAME3 | 15 | 2018
  NAME4 | 15315 | 2018

预期结果:

  

数据:{
    标签:['NAME1','NAME2','NAME3','NAME4'],
    数据集:[
    {
        标签:“ 2019”,
        数据:[10,50,70,90],
    },
    {
        标签:“ 2018”,
        数据:[1410,155.3,15,15315],
    }]
  },

实际代码:

$stmt = $mysqli->prepare(QUERY);
if(false === $stmt)
{
    $arr["message"] = $mysqli -> errno . ": " . $mysqli -> error;
}
else
{
    $stmt -> execute();
    $stmt -> bind_result($name, $amount, $year);

    if($stmt)
    {
        while($stmt->fetch()) 
        {
            // ???
        }
    }
}

1 个答案:

答案 0 :(得分:0)

您必须创建一个数据数组,然后使用json_encode

所以像这样的数组:

$data = [
      'data' => ['labels' => $labels],
      'datasets' => $datasets
];
echo json_encode($data);

对于$ labels和$ datasets:它也是可以与查询结果一起构造的数组。 您的json将如下所示:{'labels':..., 'datasets': ...}