php json_encode for php< 5.4(意外的令牌)

时间:2012-06-07 19:27:44

标签: php jquery json

我有一个jquery ajax,它调用一个输出json对象的php文件。

这一切都适用于高于5.3的php版本,但较低版本尚未实现JSON_PRETTY_PRINT, JSON_UNESCAPED_SLASHES, and JSON_UNESCAPED_UNICODE

如何逃脱“json敏感”字样,如“&”或早期版本中的“=”?

感谢您的时间!

编辑: 划伤..问题是=&gt; 我在文本中有<br />,并且已更改为<br \=""> "给出错误...

1 个答案:

答案 0 :(得分:1)

如果您使用的是UTF-8编码,则可以使用:

$json = preg_replace('/[^(\x20-\x7F)]*/','', $json);  

对于JSON_UNESCAPED_SLAHES,您可以使用:

preg_replace('\\/', '/', $json);

JSON_UNESCAPED_UNICODE可能有点复杂,我在php.net手册here上找到了一些例子。