json_decode (file_get_contents) 返回空值


json_decode (file_get_contents) returns null

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

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

当我var_dump $json时,我得到空

这是我的代码:

$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?

从文档中:

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

现在查看 JSON 林特:

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

JSON 无效。"Rotterdam""address" 之间缺少逗号

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

{ "名称" : "比尔", "城市" : "鹿特丹" "地址": "

straat 41", "max_persons": "150" }

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