0

我通过 POST 传递参数,参数是 JSON 编码的。稍后我捕获参数并将其解码到 PHP 文件中,如下所示:

$entityBody = file_get_contents('php://input');
$entityBody = json_decode($entityBody, true);

但问题是它仅在键位于双引号中时才有效,如下所示:

 {
 "id": "5",
 "name": "abcd",
 "imei": "1234"
}

当键在单引号中时,像上面的代码一样不起作用。

{
 'id': "5",
 'name': "abcd",
 'imei': "1234"
} 

我是 Json 和 PHP 的新手。因此,如果有人告诉我如何处理所有此类案件,我将不胜感激。

4

2 回答 2

0

JSON 中的所有字符串都必须用双引号引起来。单引号字符串或键不是有效的 JSON。理想情况下,您不应该为无效的 JSON 烦恼。这就是标准的用途,因此我们都可以使用标准化的数据格式,而无需猜测。

于 2013-07-23T09:38:34.307 回答
0

您可能会发现 JSON Lint 是一个有用的工具:http: //jsonlint.com/

您可以将 JSON 文本复制/粘贴到其中,它会告诉您其是否有效,如果无效,需要更正什么。当我遇到一些 JSON 时,我总是首先使用它。

于 2013-07-23T09:40:07.103 回答