我试图从我的 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。