PDO 语句转 JSON

发布于 2024-08-31 11:42:28 字数 1436 浏览 3 评论 0原文

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

打小就很酷 2024-09-07 11:42:28

您可以使用内置的 php 函数 json_encode() http://php.net/manual /en/function.json-encode.php

要对结果进行编码,请使用类似的内容

<?php
$pdo = new PDO("mysql:dbname=database;host=127.0.0.1", "user", "password");
$statement = $pdo->prepare("SELECT * FROM table");
$statement->execute();
$results = $statement->fetchAll(PDO::FETCH_ASSOC);
$json = json_encode($results);

You can use the inbuilt php function json_encode() http://php.net/manual/en/function.json-encode.php

To encode the results use something like

<?php
$pdo = new PDO("mysql:dbname=database;host=127.0.0.1", "user", "password");
$statement = $pdo->prepare("SELECT * FROM table");
$statement->execute();
$results = $statement->fetchAll(PDO::FETCH_ASSOC);
$json = json_encode($results);
幼儿园老大 2024-09-07 11:42:28

使用 fetchAll() 方法PDOStatement 检索值的数组,然后将其传递给 json_encode()

$resultJSON = json_encode($stmt->fetchAll(PDO::FETCH_ASSOC));

Use the fetchAll() method of the PDOStatement to retrieve an array of the values, and then pass that to json_encode().

$resultJSON = json_encode($stmt->fetchAll(PDO::FETCH_ASSOC));
叹梦 2024-09-07 11:42:28
$array = $statement->fetchAll( PDO::FETCH_ASSOC );
$json = json_encode( $array );
$array = $statement->fetchAll( PDO::FETCH_ASSOC );
$json = json_encode( $array );
菊凝晚露 2024-09-07 11:42:28

我还发现在发回 json_encode() 返回的 JSON 对象之前插入和设置 PHP 标头('Content-Type: application/json')非常有用

I have also found it very useful to insert and set the PHP header('Content-Type: application/json') prior to sending back the JSON object returned by json_encode()

等风来 2024-09-07 11:42:28

试试这个可能会对你有帮助

 $data = array();
        if($stmt->execute()){
          while ($row = $stmt->fetchAll(PDO::FETCH_ASSOC)) {
                $data['data'] = $row;
            }
          }
      }
    
    if(!empty($data)){
        header("Access-Control-Allow-Origin: *");//this allows cors
        header('Content-Type: application/json');
        print json_encode($data);
    }else{
      echo 'error';
    }

Try this may be it's help you

 $data = array();
        if($stmt->execute()){
          while ($row = $stmt->fetchAll(PDO::FETCH_ASSOC)) {
                $data['data'] = $row;
            }
          }
      }
    
    if(!empty($data)){
        header("Access-Control-Allow-Origin: *");//this allows cors
        header('Content-Type: application/json');
        print json_encode($data);
    }else{
      echo 'error';
    }
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文