You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修复PHP JSON编码,实现嵌套数组格式输出?

修复JSON编码代码的方案

你的问题出在将数据库返回的每一行字段值平铺成了一维数组,而目标是让每一行对应一个子数组,最终形成二维数组结构。

修改后的代码

foreach ($list->result_array() as $row) {
    // 直接将当前行的所有值作为子数组加入$data,而非逐个添加单个值
    $data[] = array_values($row);
}
$output = array(
    "data" => $data,
);
echo json_encode($output);

代码说明

  • 移除了内层foreach循环:$row本身是当前数据库行的关联数组,array_values($row)可提取该行所有值,生成一个索引子数组
  • 每次循环将这个子数组存入$data,最终$data会是二维数组,每个元素对应一行数据

正确的目标JSON结构(修正你示例中的语法问题)

{"data":[["X1.1",2,2,2,3,1,4],["X1.2",1,1,1,1,2,3],["X1.3",2,3,1,2,2,5],["X1.4",2,2,2,3,5,6]]}

你给出的目标输出缺少最外层数组包裹,标准JSON要求data的值是包含多个子数组的数组,需用[[...], [...]]格式。

内容的提问来源于stack exchange,提问作者Xerror

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.19 03:48:14