好吧,那么,我有一个游戏,可以将json格式的数据上传到我的站点。json类似于:

{
  "PlayerList":[
    {
        "PlayerKills":0,
        "Username":"Player1",
        "TimePlayed":0,
        "Deaths":0
    },
    {
        "PlayerKills":0,
        "Username":"Player1",
        "TimePlayed":0,
        "Deaths":0
    }
  ]
}

在确认json确实正确无误之后,我开始推测问题出在php上。我用来获取json的代码是:
$decodedJSON =  json_decode($entityBody, true, 4);
var_dump($decodedJSON);

$entitybody作为字符串作为json。
这里的var_dump返回null,由于我一直在使用php 5.2,所以无法确定使用json_last_错误是什么问题。
所以如果有人能给我提供一些关于问题所在的信息,我们将非常感激。

最佳答案

试试这个:

$entityBody = stripslashes($entityBody);
// this will remove all backslashes which might be the cause of returning NULL

$decodedJSON = json_decode($entityBody, true);
// leave out the depth unless you really need it to be 4.

var_dump($decodedJSON);

文档:
stripslashes http://php.net/manual/en/function.stripslashes.php
json_decode http://php.net/json_decode

09-07 16:15