You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PHP中json_encode输出后追加内容致JSON无效的问题求助

解决JSON输出被额外文本破坏的问题

核心原因

JSON格式要求输出必须是纯合法的JSON字符串,任何额外字符(文本、空格、换行等)都会导致JSON解析失败——你后续的echo内容会直接追加到JSON字符串末尾,形成不完整的非法结构。

具体解决思路

  • 只输出纯JSON:如果是接口返回JSON数据,删除json_encode之后的所有额外输出,仅保留:

    echo json_encode(['MyData' => $donnees]);
    
  • 将额外信息整合进JSON:若需要返回调试或附加信息,把内容嵌入JSON结构内部,保证输出是单一合法JSON对象:

    echo json_encode([
        'MyData' => $donnees,
        'message' => "Why i don't get out ?"
    ]);
    
  • 临时调试用脚本终止:如果只是临时调试,不想让后续输出破坏JSON,在输出JSON后用exit或die终止脚本执行:

    echo json_encode(['MyData' => $donnees]);
    exit; // 后续代码不再执行
    echo "Why i don't get out ?"; // 这行不会被输出
    
  • 排查隐性输出:检查PHP文件是否有开头/结尾的空格、BOM头,或者其他函数(如var_dump、print_r)的隐性输出,这些都会污染JSON内容,需要全部清除。

内容的提问来源于stack exchange,提问作者Tetsuochat

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.12 07:35:19