json - 从 Laravel Eloquent 响应中格式化 JSON
问题描述
我收到了 Eloquent 的回复,我需要完全按照以下方式对其进行格式化:
{
name: "James",
data: {
"2017-01-01 00:00:00": 300,
"2017-01-02 00:00:00": 600,
}
},
我得到的当前响应是:
{
name: "James",
date: "2017-01-01 00:00:00",
amount: "300"
},
{
name: "James",
date: "2017-01-02 00:00:00",
amount: "600"
},
我已经绑定了这个,但格式不正确:
$chartData = [];
foreach($charts as $chart){
array_push($chartData, [
'name' => $chart->name,
'data' => json_encode([$chart->date. ':' .$chart->amount], true)
]);
}
结果是:
{
name: "James",
data: "{"2017-01-01T00:00:00.000000Z":"300"}"
},
{
name: "James",
data: "{"2017-01-02T00:00:00.000000Z":"600"}"
},
谢谢
解决方案
你可以这样做:
$chartData = [];
foreach($charts as $chart){
array_push($chartData, [
'name' => $chart->name,
'data' => $chart->date. ':' .$chart->amount
]);
}
json_encode($chartData);
推荐阅读
- python - 如何从单元测试 django 视图中模拟模型方法?
- powershell - 如何使用 PowerShell 将有关监视器的信息导出到 csv 文件?
- c++ - 如何更改另一个进程中的地址,其值也可以更改?
- r - 如何使用 dplyr 或 ggplot 绘制连续参数的中值?
- php - Yii2在dataProvider中添加自定义查询,无需多次重写查询
- python - 从行和列索引创建数据框
- r - 使用R中的if语句逐行比较csv
- ios - 具有 3D 效果的 iOS 雷达图
- amazon-s3 - 为什么我从 S3 DeleteObjects 收到“AccessDenied”?
- python - 如何在一行中将列表分成多个块?