json_decode适用于localhost,但不适用于webserver

时间:2011-10-27 06:32:53

标签: php javascript json

我有一个JS函数,它使用JSON.stringify通过GET将json字符串传递给PHP脚本。

在我的本地主机上,JSON在PHP端解码就好了,但是当我将它移动到我的网络服务器时,它就停止了工作。进一步分析显示我的网络服务器正在向JSON字符串添加\(斜杠),根据JSONLint.com,带有斜杠的字符串是无效的JSON。

我的网络服务器上的JSON显示如下:

{\"Product\":\"Walnut Pastry\",\"Size\":\"Slice\",\"Quantity\":\"2\",\"Price\":0}

为什么会在我的网络服务器上发生这种情况,我该怎么做才能逃避字符串? 我尝试了json_decode(str_replace('/','',$_GET['json']),true);,但这无效

1 个答案:

答案 0 :(得分:5)

看来你有魔术引号。 Read Magic Quotes

此外,您应该注意手册页上的警告,然后将其关闭。