前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >PHP如何将数据库查询结果输出为json格式

PHP如何将数据库查询结果输出为json格式

作者头像
吃猫的鱼Code
发布2023-02-02 10:39:53
发布2023-02-02 10:39:53
3.3K00
代码可运行
举报
运行总次数:0
代码可运行
PHP如何将数据库查询结果输出为json格式

近期做接口的时候需要做到一个操作,将数据库查询结果输出为json格式方便程序调用。 于是在网上看到了两种解法,就此分享出来,供大家学习以及自己日后进行参考。 可将其封装成专门将数据转换成json格式的接口

第一种方法

代码语言:javascript
代码运行次数:0
复制
<?php  
//此处前面省略连接数据库
//默认下方的$con为连接数据库的操作
//可将其封装成专门将数据转换成json格式的接口
//吃猫的鱼www.fish9.cn
$sql = "SELECT * FROM brands";  
$result = mysqli_query($con,$sql);  
if (!$result) {
    printf("Error: %s\n", mysqli_error($con));
    exit();
}

$jarr = array();
while ($rows=mysqli_fetch_array($result,MYSQL_ASSOC)){
    $count=count($rows);//不能在循环语句中,由于每次删除 row数组长度都减小  
    for($i=0;$i<$count;$i++){  
        unset($rows[$i]);//删除冗余数据  
    }
    array_push($jarr,$rows);
}
//此时的$jarr变量为数组,但是还不是json格式
echo json_encode($jarr);//将数组进行json编码,并且进行输出
$arr=json_decode($str);//再进行json解码
mysqli_close($con);//断开数据库连接操作
?>

第二种方法

代码语言:javascript
代码运行次数:0
复制
   <?php
   //此处前面省略连接数据库
$sql = "SELECT * FROM brands";  
$result = mysqli_query($con,$sql);  
if (!$result) {
    printf("Error: %s\n", mysqli_error($con));
    exit();
}
 
$jarr = array();
while ($rows=mysqli_fetch_array($result,MYSQL_ASSOC)){
    $count=count($rows);//不能在循环语句中,由于每次删除 row数组长度都减小  
    for($i=0;$i<$count;$i++){  
        unset($rows[$i]);//删除冗余数据  
    }
    array_push($jarr,$rows);
}
//$jarr是数组
 
$jobj=new stdclass();//实例化stdclass,这是php内置的空类,可以用来传递数据,由于json_encode后的数据是以对象数组的形式存放的,
//所以我们生成的时候也要把数据存储在对象中
foreach($jarr as $key=>$value){
$jobj->$key=$value;
}
//print_r($jobj);//打印传递属性后的对象
echo json_encode($jobj);//打印编码后的json字符串
mysqli_close($con);//断开数据库连接
?>

本文共 352 个字数,平均阅读时长 ≈ 1分钟

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • PHP如何将数据库查询结果输出为json格式
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档