【发布时间】:2015-02-09 00:31:28
【问题描述】:
我需要将表格内容编码为 JSON 以便将其插入文件中。
输出必须如下:
{
"name1":[{"id":"11","name":"name1","k1":"foo","k2":"bar"}],
"name2":[{"id":"12","name":"name2","k1":"foo","k2":"bar"}],
}
确实,每个 JSON“行”对应 mysql 行的内容,每个 JSON 数组的名称是“名称”列的名称。
目前我唯一能做到的是:
$return_arr = array();
$sql = "SELECT * FROM bo_appart";
$result = mysql_query($sql) or die(mysql_error());
$index = 0;
while ($row = mysql_fetch_assoc($result)) {
$return_arr[$index] = $row;
$index++;
}
echo json_encode($return_arr);
这是我得到的输出:
[
{"id":"11","name":"name1","k1":"foo","k2":"bar"},
{"id":"12","name":"name2","k1":"foo","k2":"bar"},
]
非常感谢!!!
更新
工作代码:
$return_arr = array();
$sql = "SELECT * FROM bo_appart";
$result = mysql_query($sql) or die(mysql_error());
while ($row = mysql_fetch_assoc($result)) {
$return_arr[ $row['nom_appart'] ][] = $row;
}
echo json_encode($return_arr);
}
【问题讨论】:
-
太棒了。你有问题吗?
-
那么您的实际问题是什么?只需构建您想要的数据结构,然后
json_encode()即可。 -
我刚刚进行了编辑,以便您可以看到我实际做了什么。问题是我没有设法建立正确的结构:/
-
$return_arr[ $row['name'] ][] = $row;...
标签: php mysql arrays json multidimensional-array