json_encode不能以Json格式输出吗?

时间:2018-08-20 12:44:12

标签: php mysql json api

因此,我尝试使用来自MySQL数据库(10.0.35-MariaDB)的数据制作一个简单的Web JSON API,并尝试使用json_encode();输出信息。它成功收集了我的数据并仅以JSON格式输出了数据吗? 与我的预期相比,这是输出的结果;
我有的... My version 我梦见拥有... What I wan't 我认为JSON Formatter Chrome扩展程序甚至没有在我的页面sorta上显示的事实是一个明显的信号,表明我没有正确执行操作...

  $conn = mysqli_connect('host', 'username', 'pass', 'db');
  $query = mysqli_query($conn, "SELECT * FROM `table`;");
  while ($row = mysqli_fetch_assoc($query)) {
    $data[] = $row;
  }
  echo json_encode($data);

我知道要像Steam一样归档如此漂亮的JSON文件,需要做更多的工作,因此,现在,我只是在寻求有关以JSON格式实际输出的帮助。

1 个答案:

答案 0 :(得分:7)

输出的是完美的JSON。您的浏览器扩展程序根本无法解决这个问题,因为您很可能没有在HTTP Content-Type标头中指定内容类型。否则,任何内容对浏览器来说都是纯文本。在输出JSON之前添加以下代码:

header('Content-Type: application/json');