PHP从JSON读取

时间:2014-04-08 13:28:13

标签: php json curl

我遇到了这个奇怪的问题,它在我的台式机上运行良好,但在我的手机或任何其他PC上运行不正常。

我从API获取此JSON字符串

{"boqqinu":{"id":21842692,"name":"BoQqinu","profileIconId":642,"summonerLevel":30,"revisionDate":1396885332000}}

我正在使用cURL获取此数据并使用php函数对其进行解码;

$curl = curl_init();
    curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($curl, CURLOPT_URL, $url);
    $result = curl_exec($curl);
    $result = utf8_encode($result);
    $obj = json_decode($result, true);

    $statuscode = curl_getinfo($curl, CURLINFO_HTTP_CODE); 
    curl_close($curl);

    var_dump($obj);
    echo $obj[$sumNameWeb]['id'];
    echo $obj[$sumNameWeb]['summonerLevel'];

然而,最后2个回声在我的手机/朋友电脑上没有显示任何内容,但在我的电脑上显示了它们的价值...... 我不确定有什么问题。这怎么可能呢?

编辑 - var转储回复我的电脑和我的朋友电脑上的所有数据没有问题..

1 个答案:

答案 0 :(得分:0)

确保移动浏览器正在提交有效的JSON,并且在提交到PHP json_decode()函数之前,它已被正确转义或转义。检查它的最佳方法是打印出原始json字符串并在两个浏览器中进行比较。 php函数是服务器端,不受浏览器的影响,因此它必须是浏览器格式化json字符串。