PHP和SQL分组查询结果如何以JSON格式输出?

php和sql分组查询结果如何以json格式输出?

php sql 如何按照分组查询后分类输出为 json?

问题:

需要将数据库中的数据分组输出为 json 格式,但当前代码只实现了按照分类遍历输出的情况。如何改进代码来输出为 json?

改进方案:

立即学习“PHP免费学习笔记(深入)”;

初始化一个名为 $response 的数组,用以存放响应信息(包括响应码、消息、数据)。使用循环遍历分类表,为每个分类创建一个空元素 $item。为每个分类赋值 name 字段。再次使用循环遍历详情表,为每个详情赋值到 $item[‘list’] 数组中。将每个 $item 元素添加到 $result 数组中。将 $result 数组赋值给 $response[‘data’]。设置 content-type 为 application/json。使用 json_encode 将 $response 数组转为 json 字符串并输出。

改进后的代码:

$response = [    'code' => 0,    'msg' => 'ok',    'data' => null,];$result = [];$queryClass = mysqli_query($conn, "SELECT cid,cname FROM class_wtool WHERE uid = 'common'");while ($rclass = mysqli_fetch_array($queryClass)) {    $item = [];    $item['name'] = $rclass['cname'];    $queryDetail = mysqli_query(        $conn,        "SELECT wid,simpleW,detailW FROM word_wtool WHERE uid = 'common' AND cid = " . $rclass['cid']    );    while ($rdetail = mysqli_fetch_array($queryDetail)) {        $item['list'][] = [            'wid' => $rdetail['wid'],            'simpleW' => $rdetail['simpleW'],            'detailW' => $rdetail['detailW'],        ];    }    $result[] = $item;}$response['data'] = $result;header('Content-Type: application/json');echo json_encode($response, JSON_UNESCAPED_SLASHES | JSON_UNESCAPED_UNICODE);die();

这样就可以将分组后的数据按照 json 格式输出。

以上就是PHP和SQL分组查询结果如何以JSON格式输出?的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1251728.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年12月9日 23:24:35
下一篇 2025年12月9日 23:24:50

相关推荐

发表回复

登录后才能评论
关注微信