美文网首页
php函数json_encode

php函数json_encode

作者: 乔四儿丶 | 来源:发表于2019-04-25 16:26 被阅读0次

    遇到的问题

    列表接口返回的http状态码为200,但response body 为空,且查看日志没有找到报错.
    经过调试发现在类中的_getResponse方法中,在执行

    $res = json_encode($value, $option);
    

    时返回为false.
    通过打印json_last_error(), 发现是因为传给json_encode()方法的数组中包含有无穷大或者分母为0的这种非法值.

    解决办法

    json_encode() 方法可以传入 JSON_PARTIAL_OUTPUT_ON_ERROR option 来将此类非法值强制转换成0

    建议

    _getResponse方法的最后加上

    if (JSON_ERROR_NONE !== json_last_error()) {
            throw new \Exception(json_last_error_msg());
    }
    

    以便更好地定位错误.

    相关文章

      网友评论

          本文标题:php函数json_encode

          本文链接:https://www.haomeiwen.com/subject/vtmzgqtx.html