我刚刚开始学习使用带有PHP的JSON,我不确定何时使用双引号,何时不使用,因为当我更改它时,我收到了以下错误几次:
SyntaxError:JSON.parse:期望的属性名称或'}'
我的代码
<<< EOT
{
'id' : 152,
'price' : '$Z',
'title' : '$Y',
'check' : $check
}
EOT;
这是对的吗?
// $ Z是价格,但当它被插入数据库时,它也会被改变以匹配瑞典的写出价格的方式,例如&#34; 10000&#34;成为&#34; 10 000&#34;并且它不再是一个int,因为它有一个空格并且我使用bind_param插入它(&#34; s&#34;)
所以我要确保在制作JSON值时应该使用:(&#39; price&#39; =&gt;&#39; $ Z&#39;)因为它可以是&#34; 10& #34;或&#34; 10 000&#34;
我还有一个值$ check,可以是&#34; -1&#34;或&#34; 0&#34;或&#34; 1&#34;
应该使用双引号或无引号来表示JSON值?我不确定,因为价值可以是&#34; -1&#34;例如:(&#39; check&#39; =&gt; $ check)
最后,当我收到错误消息&#34; SyntaxError:JSON.parse:期望的属性名称或&#39;}&#39;&#34;
我理解是因为(&#39;标题&#39; =&gt;&#39; $ Y&#39;) 因为$ Y = Macbook Pro 15&#34;它写出了15&#34; &#34;到底。它是正确逃避这些价值观的最好方法,可以删除像&#34;
这样的歌曲对不起,如果我的问题看起来很混乱,那么英语不是我的第一次憔悴。
答案 0 :(得分:2)
答案 1 :(得分:2)
自己编写JSON通常会让你遇到麻烦。让PHP为你做!
$array = array(
'id' => 152,
'price' => $Z,
'title' => $Y,
'check' => $check
);
$validJson = json_encode($array);
给我:
{"id":152,"price":null,"title":null,"check":null}
显然,我不知道您的$Z
和$Y
值。
然后正如您在此输出中所看到的那样,需要双引号。