首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用php prepared-statement从MySQL返回Json格式的对象数组

如何使用php prepared-statement从MySQL返回Json格式的对象数组
EN

Stack Overflow用户
提问于 2019-05-14 17:56:11
回答 2查看 88关注 0票数 1

我正在尝试用php编写一个函数,它允许我将一个对象数组(在我的例子中,对象是来自phpMyAdmin的数据库(MySQL)中的行)返回到Json格式。

下面是我的函数:

代码语言:javascript
复制
public function getAllCases()
    {

        $stmt = $this->conn->prepare("SELECT * FROM mycase ");
        $stmt->execute();
        $arr = []
        $result = $stmt->get_result();

        while($row = $result->fetch_object()) {
            $arr[] = $row;
        }

        return $arr;
    }

我在网上找不到其他东西,这个功能也不起作用。例如,如果我的表有4行,我希望能够获得4个对象,并且这4个对象中的每个对象都应该表示表中的一行和它的列。任何帮助都将不胜感激。

EN

回答 2

Stack Overflow用户

发布于 2019-05-14 17:58:57

您可以使用json_encodejson_decode将数组转换为JSON,反之亦然。

代码语言:javascript
复制
return json_encode($arr)
票数 0
EN

Stack Overflow用户

发布于 2019-05-14 18:12:06

要将php数组转换为json,请使用json_encode()函数。在您的代码中,您混淆了普通语句和准备好的语句。

代码语言:javascript
复制
public function getAllCases()
{
    $data = array();
    $result = $this->conn->query("SELECT * FROM `mycase`");
    $num_rows = $result->num_rows;
    if ($num_rows  > 0) {                           
        while($row = $result->fetch_assoc()) {
            $data[] = $row; 
        }
     }
    return json_encode($data);
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56127677

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档