【问题标题】:json_encode doesn't output to echo correctly - CodeIgniter 3, PHP 7.4 + NGINX, Ubuntu 18json_encode 无法正确输出回显 - CodeIgniter 3、PHP 7.4 + NGINX、Ubuntu 18
【发布时间】:2020-01-12 09:52:07
【问题描述】:

我有一个奇怪的问题。有一个 Ajax 请求 (POST),它将数据发送到 CodeIgniter 3 端点,一切正常。数据已发送,我可以在那里访问它,但在 PHP 中,当我尝试类似:

echo json_encode([
            'success' => false,
            'message' => 'Not found'
]);

- 空响应

输出此内容的唯一方法是在此之前“回显”某些内容:

echo 1;
echo json_encode([
            'success' => false,
            'message' => 'Not found'
]);
  • 1{"success":false,"message":"Not found"}

可以是 char 或 bool true(在浏览器响应中为 1),并且必须在 json_encode 之前。

我尝试设置响应 jsonhtml 的标题,但没有效果。 和Postman.是一样的

编辑。

这也有效:

echo json_encode('test');

,但我需要一个集合。

【问题讨论】:

  • 嗯,这在逻辑上没有多大意义。你在哪里查看回复?在浏览器的调试面板中?您是否尝试过使用浏览器(不使用 ajax)发布到它?
  • 尝试使用return json_encode(并添加标头json响应。
  • 能发下你的js吗?

标签: php nginx codeigniter-3 fpm


【解决方案1】:
     return json_encode([
        'success' => false,
        'message' => 'Not found'
        ]);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-07-11
    • 1970-01-01
    • 1970-01-01
    • 2016-09-06
    • 1970-01-01
    • 1970-01-01
    • 2020-10-09
    相关资源
    最近更新 更多