如何将MySQL查询结果转换为符合指定JSON结构的PHP数组
实现代码
直接初始化根数组,再遍历查询结果往对应子数组追加数据即可:
// 初始化符合结构要求的目标数组 $finalArr = [ 'types' => [] ]; // 遍历数据库查询结果填充数组 foreach ($data as $item) { $finalArr['types'][] = [ 'type' => $item->type, 'count' => (int)$item->count, 'amount' => (int)$item->amount ]; }
说明
- 代码里的
(int)是强制类型转换,用来保证最终JSON输出的count、amount为数字类型而非字符串,完全匹配你给出的预期结构。如果你的数据库查询结果本身返回的就是整型字段,也可以省略强转逻辑。 - 后续直接调用
json_encode($finalArr)即可得到目标JSON,加上JSON_PRETTY_PRINT参数可以输出格式化后的易读JSON结构。
内容的提问来源于stack exchange,提问作者Amjad
相关产品推荐
相关产品推荐

