我希望能有更好的方式来做我正在做的事情。我有几个图表要做,并希望以最好的方式去做。mySQL with PHP to JSON for clientside chart
我正在使用HighCharts,它需要一个JSON数据对象。我使用Laravel作为我的后端。我发送2个变量(标签为& 1,值为1)到我的视图中。我知道我能做到这一点的控制器,但还没有开始
我的问题:
我有这个表
| date | printer | quant |
| 2017-01-23 | JP1 | 20 |
| 2017-01-23 | JP1 | 12 |
| 2017-01-23 | JP2 | 18 |
| 2017-01-24 | JP5 | 16 |
| 2017-01-24 | JP1 | 8 |
| 2017-01-26 | JP2 | 12 |
我想打所有的情况下,可变印刷,漏天,需要每天总结数量,并且如果缺失则为0。需要一个数组,每个打印机,我没有一个预制列表,因为他们改变了很多。我的查询将会有一个日期范围。打印机列表在该日期范围内将是不同的。
我所做的是使枢轴的MySQL查询这让我这个
[
{
"date": "2017-01-23",
"sum": "1416",
"JP4_3": "375",
"JP4_1": "533",
"JP4_2": "508",
"B3": null,
"A2": null
},
{
"date": "2017-01-24",
"sum": "2151",
"JP4_3": "847",
"JP4_1": "499",
"JP4_2": "805",
"B3": null,
"A2": null
},
{
"date": "2017-01-25",
"sum": "2097",
"JP4_3": "284",
"JP4_1": "917",
"JP4_2": "896",
"B3": null,
"A2": null
}
]
我可以遍历并抓住每一个属性,以使阵列。
我想知道有没有更好的方法。我需要获得一个标签和数据才能处理高图表。这是一个例子。
xAxis: {
categories: ['Apples', 'Bananas', 'Oranges']
},
series: [{
name: 'Jane',
data: [1, 0, 4]
}, {
name: 'John',
data: [5, 7, 3]
}]
我知道这是一个复杂而漫长的问题。感谢您的帮助和指导。
格式化数据可能不会比循环和制作自己的数组更好,因为highcharts需要这种特定的格式。我在将highcharts集成到几个不同的PHP/MySQL项目后说这些,一对是Laravel。一般来说,我循环并缓存图表数据(无论是在内存中还是在表格中)以经常保存处理大型数据集。 – Samsquanch
Hi @Samsquanch。你能否提供一个例子。简单一点。我来自C#,并且自从我触摸php以来已经很长时间了。有几种功能我认为在这里是有帮助的,我不知道寻找。 – BrinkDaDrink
或者如果你知道这个senario的好资源。我找到了一个,但他们不显示数据库,所以它不那么清楚。 – BrinkDaDrink