json_decode(file_get_contents)返回null

时间:2015-01-10 17:57:58

标签: php json

我试图从我的POST数据创建一个json对象。当我var_dump $ postData时,我得到了以下结果:

string(92) "{
  "name" : "bier",
  "city" : "Rotterdam"
  "address": "straat 41"
  "max_persons": "150"
}"

当我var_dump $ json我得到NULL

这是我的代码:

$postData = file_get_contents("php://input");
$json = json_decode($postData);

var_dump($postData);

这是我发送到我的网络服务的内容:

{
  "name" : "bier",
  "city" : "Rotterdam"
  "address": "straat 41"
  "max_persons": "150"
}

为什么Json_decode返回NULL?

2 个答案:

答案 0 :(得分:1)

来自documentation

  

如果无法解码json或者编码数据的深度超过递归限制,则返回NULL。

现在看JSON Lint

Parse error on line 3:
... "city": "Rotterdam""address": "straat 4
-----------------------^
Expecting '}', ':', ',', ']'

JSON无效。 "Rotterdam""address"

之间缺少逗号

答案 1 :(得分:0)

在" straat 41"之后,你的json中缺少一个逗号。

{" name" :" bier"," city" :"鹿特丹" "地址":" straat 41"," max_persons":" 150" }

使用jsonlint.com验证您尝试解码的json。