php:get_file_contents的json获取失败

访问xxx路径会返回json格式的数据,简单点,我用file_get_contents进行获取,发现解析不出来,显示是string类型数据,非json格式,也就是个格式不对。
但是我直接拿路径返回的数据解析是ok的,也就是说file_get_contents获取的数据有所不同。
后来查了下资料,提示说file_get_contents得到的数据前面有三个看不到的字符,所以代码修改如下,仅供参考:

$url = “xxx”; //请求的路径
$result = substr(file_get_contents($url),3);
$result = json_decode($result);
return $result;

php:get_file_contents的json获取失败》有2个想法

  1. 鸡鸡哥

    说实话,json_decode的我问题真是多
    以下是json_decode的出错信息打印办法
    switch (json_last_error()) {
    case JSON_ERROR_NONE:
    echo ‘ – No errors’;
    break;
    case JSON_ERROR_DEPTH:
    echo ‘ – Maximum stack depth exceeded’;
    break;
    case JSON_ERROR_STATE_MISMATCH:
    echo ‘ – Underflow or the modes mismatch’;
    break;
    case JSON_ERROR_CTRL_CHAR:
    echo ‘ – Unexpected control character found’;
    break;
    case JSON_ERROR_SYNTAX:
    echo ‘ – Syntax error, malformed JSON’;
    break;
    case JSON_ERROR_UTF8:
    echo ‘ – Malformed UTF-8 characters, possibly incorrectly encoded’;
    break;
    default:
    echo ‘ – Unknown error’;
    break;
    }

    回复

发表回复

您的电子邮箱地址不会被公开。