PHP JSON GET在网页上正确显示,但不在PHP中显示

时间:2017-11-30 20:59:39

标签: php json

我的代码:

<?php 
    header('Content-Type: application/json; charset=utf-8');
    $url = "http://80.211.192.133:8117/stats";
    $json = file_get_contents($url);
    $obj = json_decode($json);

    $error = json_last_error();

    var_dump($error);
?>

我收到错误:

code 5 - Malformed UTF-8 characters when encoding callback response 

但是当您从$url变量打开链接时,它会显示正确的数据。

有人可以帮助我吗?

1 个答案:

答案 0 :(得分:4)

问题来自服务器压缩数据。 gzinflate会帮助你:

<?php 
header('Content-Type: application/json; charset=utf-8');
$url = "http://80.211.192.133:8117/stats";
$data = file_get_contents($url); 
$data = gzinflate( $data ); 
$obj = json_decode($data,true);

平心而论,@ Octopus也发现了重要部分。