php - 格式化JSON_ENCODED数据PHP Highcharts

标签 php mysql json highcharts

我试图从数据库中获取数据并用它填充Highstock图表,之前我曾将图表的“ data:”选项分配给通过搜索生成的数据表,但我意识到数据可以绘制序列,但是在随机顺序。这是我尝试过的:

      function json_original()
{

$sql = "SELECT UNIX_TIMESTAMP(t1.`date`) as `date`, sum(t1.`present`) as `present` from record_attendance_cell t1 group by t1.`date`";

 $present_g = $this->db->query($sql)->result_array();

   foreach($present_g as $row) {
       $value = $row['present'];
       $datetime = $row['date'] * 1000; // convert from Unix timestamp to JavaScript time
       $data[] = "[$datetime, $value]";
       // echo join($data, ',');
       $result = json_encode($data);
       echo $result;
        }  
}


代码的结果具有相同数据的多次迭代:
[“ [1483833600000,2]”] [“ [1483833600000,2]”,“ [1484697600000,1]”] [“ [1483833600000,2]”,“ [1484697600000,1]”,“ [1491174000000,1]” ] [“ [1483833600000,2]”,“ [1484697600000,1]”,“ [1491174000000,1]”,“ [1497222000000,22]”] [“ [1483833600000,2]”,“ [1484697600000,1]” ,“ [1491174000000,1]”,“ [1497222000000,22]”,“ [1502319600000,11]”] [“ [1483833600000,2]”,“ [1484697600000,1]”,“ [1491174000000,1]”, “ [[1497222000000,22]”,“ [1502319600000,11]”,“ [1502492400000,3]”] [“ [1483833600000,2]”,“ [1484697600000,1]”,“ [1491174000000,1]”,“ [1497222000000,22]“,” [1502319600000,11]“,” [1502492400000,3]“,” [1503010800000,3]“] [” [1483833600000,2]“,” [1484697600000,1]“,” [ 1491174000000,1]“,” [1497222000000,22]“,” [1502319600000,11]“,” [1502492400000,3]“,” [1503010800000,3]“,” [1503183600000,30]“] [” [1483833600000 ,2]“,” [1484697600000,1]“,” [1491174000000,1]“,” [1497222000000,22]“,” [1502319600000,11]“,” [1502492400000,3]“,” [1503010800000,3 ]“,” [1503183600000,30]“,” [1503270000000,12]“] [” [1483833600000,2]“,” [14846976 00000,1]“,” [1491174000000,1]“,” [1497222000000,22]“,” [1502319600000,11]“,” [1502492400000,3]“,” [1503010800000,3]“,” [1503183600000, 30]“,” [1503270000000,12]“,” [1503356400000,10]“] [” [1483833600000,2]“,” [1484697600000,1]“,” [1491174000000,1]“,” [1497222000000,22 ]“,” [1502319600000,11]“,” [1502492400000,3]“,” [1503010800000,3]“,” [1503183600000,30]“,” [1503270000000,12]“,” [1503356400000,10]“ ,“ [[1503961200000,9]”] [[[1483833600000,2]“,” [1484697600000,1]“,” [1491174000000,1]“,” [1497222000000,22]“,” [1502319600000,11]“, “ [1502492400000,3]”,“ [1503010800000,3]”,“ [1503183600000,30]”,“ [1503270000000,12]”,“ [1503356400000,10]”,“ [1503961200000,9]”,“ [ 1506985200000,3]“] [” [1483833600000,2]“,” [1484697600000,1]“,” [1491174000000,1]“,” [1497222000000,22]“,” [1502319600000,11]“,” [1502492400000 ,3]“,” [1503010800000,3]“,” [1503183600000,30]“,” [1503270000000,12]“,” [1503356400000,10]“,” [1503961200000,9]“,” [1506985200000,3 ]“,” [1507158000000,3]“] [” [1483833600000,2]“,” [1484697600000,1]“ ,“ [1491174000000,1]”,“ [1497222000000,22]”,“ [1502319600000,11]”,“ [1502492400000,3]”,“ [1503010800000,3]”,“ [1503183600000,30]”,“ [1503270000000,12]“,” [1503356400000,10]“,” [1503961200000,9]“,” [1506985200000,3]“,” [1507158000000,3]“,” [1508367600000,31]“] [” [ 1483833600000,2]“,” [1484697600000,1]“,” [1491174000000,1]“,” [1497222000000,22]“,” [1502319600000,11]“,” [1502492400000,3]“,” [1503010800000, 3]“,” [1503183600000,30]“,” [1503270000000,12]“,” [1503356400000,10]“,” [1503961200000,9]“,” [1506985200000,3]“,” [1507158000000,3] “,” [1508367600000,31]“,” [1509408000000,3]“] [” [1483833600000,2]“,” [1484697600000,1]“,” [1491174000000,1]“,” [1497222000000,22]“ ,“ [1502319600000,11]”,“ [1502492400000,3]”,“ [1503010800000,3]”,“ [1503183600000,30]”,“ [1503270000000,12]”,“ [1503356400000,10]”,“ [1503961200000,9]“,” [1506985200000,3]“,” [1507158000000,3]“,” [1508367600000,31]“,” [1509408000000,3]“,” [1509667200000,8]“] [” [ 1483833600000,2]“,” [1484697600000,1]“,” [1491174000000,1]“,” [1497222000 000,22]“,” [1502319600000,11]“,” [1502492400000,3]“,” [1503010800000,3]“,” [1503183600000,30]“,” [1503270000000,12]“,” [1503356400000, 10]“,” [1503961200000,9]“,” [1506985200000,3]“,” [1507158000000,3]“,” [1508367600000,31]“,” [1509408000000,3]“,” [1509667200000,8] “,” [1510790400000,10]“] [” [1483833600000,2]“,” [1484697600000,1]“,” [1491174000000,1]“,” [1497222000000,22]“,” [1502319600000,11]“ ,“ [1502492400000,3]”,“ [1503010800000,3]”,“ [1503183600000,30]”,“ [1503270000000,12]”,“ [1503356400000,10]”,“ [1503961200000,9]”,“ [1506985200000,3]“,” [1507158000000,3]“,” [1508367600000,31]“,” [1509408000000,3]“,” [1509667200000,8]“,” [1510790400000,10]“,” [1511049600000 ,12]“] [” [1483833600000,2]“,” [1484697600000,1]“,” [1491174000000,1]“,” [1497222000000,22]“,” [1502319600000,11]“,” [1502492400000, 3]“,” [1503010800000,3]“,” [1503183600000,30]“,” [1503270000000,12]“,” [1503356400000,10]“,” [1503961200000,9]“,” [1506985200000,3] “,” [1507158000000,3]“,” [1508367600000,31]“,” [1509408000000,3]“,” [ 1509667200000,8]“,” [1510790400000,10]“,” [1511049600000,12]“,” [1511395200000,12]“] [” [1483833600000,2]“,” [1484697600000,1]“,” [1491174000000 ,1]“,” [1497222000000,22]“,” [1502319600000,11]“,” [1502492400000,3]“,” [1503010800000,3]“,” [1503183600000,30]“,” [1503270000000,12] ]“,” [1503356400000,10]“,” [1503961200000,9]“,” [1506985200000,3]“,” [1507158000000,3]“,” [1508367600000,31]“,” [1509408000000,3]“ ,“ [1509667200000,8]”,“ [1510790400000,10]”,“ [1511049600000,12]”,“ [1511395200000,12]”,“ [1514764800000,2]”]

数据应如下所示:
Format

参考文件:
High Charts

最佳答案

请记住,json_encode必须使用一次:

foreach($present_g as $row) {
    $value = $row['present'];
    $datetime = $row['date'] * 1000; // convert from Unix timestamp to JavaScript time
    // Also remove quotes here, you don't need a string
    $data[] = [$datetime, $value];
}  
$result = json_encode($data);
echo $result;

关于php - 格式化JSON_ENCODED数据PHP Highcharts,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47495390/

相关文章:

php - 如何添加shebang#!在linux上使用php脚本?

mysql - 查询导致另一表中的一行的多行

javascript - 使用 javascript 从通过 JSON 返回的域获取 TXT 记录

php - 从JSON文件加载数据到MYSQL数据库

php - 无法从 select2 搜索结果中选择结果

javascript - 使用 PHP 和 JS 从 URL 解析 JSON

php - 每个实体一个查询

javascript - 当在 AJAX、Jquery 中使用 GET 更新数据库时,如何反射(reflect)表上的更新

php - 删除 MySQL 中的 JSON 字段 [PHP] [CodeIgniter]

c++ - gSOAP 指定访问控制允许来源