打印PHP字符串并在javascript中将其解析为JSON

时间:2011-08-28 00:12:39

标签: php javascript jquery json

我的数据库中有一个json_string。 我在javascript中回显并解析它为一个对象

我做

$.parseJSON('<?php echo $json_string;?>');

我得到一个json解析错误。 我该怎么办?

这是我的json_String

{"patches":[[{"diffs":[[1,"\u000a\u000a printhellon() {\u000a\u000a\u000a}d\u000a\u000a\u000a"]],"start1":0,"start2":0,"length1":0,"length2":26}],[{"diffs":[[0,") {\u000a\u000a\u000a}d"],[1,"s"],[0,"\u000a\u000a\u000a"]],"start1":15,"start2":15,"length1":11,"length2":12}],[{"diffs":[[0," {\u000a\u000a\u000a}ds"],[1,"d"],[0,"\u000a\u000a\u000a"]],"start1":16,"start2":16,"length1":11,"length2":12}]],"times":[1314489779299,1314489779408,1314489779581]}

2 个答案:

答案 0 :(得分:5)

我认为JSON解析器由于某种原因不喜欢字符串中的换行符。在删除\ u000a字符后,解析为我工作。

编辑:就像布拉德所说,将代码直接包含在对象中会更好。解析JSON对于使用Ajax或其他东西获得的数据通常更有用。

答案 1 :(得分:-3)

从您的示例中,您似乎正在尝试将PHP代码插入到javascript中。你不能像这样使用PHP。 PHP是服务器端,而Javascript是在下载页面后在浏览器中运行的。

如果必须从PHP获取数据到javascript,则需要使用AJAX。使用JQuery实际上非常简单。查看http://api.jquery.com/jQuery.ajax/