我已经使用json_encode
了很长时间了,到目前为止我还没有遇到任何问题。现在,我正在使用上传脚本,并且尝试在文件上传后返回一些JSON数据。
我有以下代码:
print_r($result); // <-- This is an associative array
echo json_encode($result); // <-- this returns valid JSON
这给了我以下结果:
// print_r result
Array
(
[logo_url] => http://mysite.com/uploads/gallery/7f/3b/f65ab8165d_logo.jpeg
[img_id] => 54
[feedback] => Array
(
[message] => File uploaded
[success] => 1
)
)
// Echo result
{"logo_url":"http:\/\/mysite.com\/uploads\/gallery\/7f\/3b\/f65ab8165d_logo.jpeg","img_id":"54","feedback":{"message":"File uploaded","success":true}}
谁能告诉我为什么加json_encode
斜杠?
更新
@Quentin说,事情是发生之间json_encode
和.parseJSON
与他的权利。
做一个alert(data.toSource());
给我以下结果:
({response:"{\"logo_url\":\"http:\\/\\/storelocator.com\\/wp-content\\/uploads\\/gallery\\/7f\\/3b\\/71b9520cfc91a90afbdbbfc9d2b2239b_logo.jpeg\",\"img_id\":\"62\",\"feedback\":{\"message\":\"File uploaded\",\"success\":true}}", status:200})
这不是有效的JSON。它还添加status:200
,我不知道它来自哪里。
可能Plupload bind
对我返回的数据有影响吗?
这是我的js脚本:
uploader.bind('FileUploaded', function(up, file, data) {
alert(data.toSource());
$('#' + file.id + " b").html("100%");
});
谁能告诉我为什么json_encode添加斜杠?
<
当嵌入在HTML脚本元素中时,正斜杠字符可能会导致问题(如果在前面加上斜杠字符,则会触发“脚本元素结尾”的SGML规则)。为了预防起见,将其逃脱。
因为当我尝试使用jQuery.parseJSON(response); 在我的js脚本中,它返回null。所以我想这与斜杠有关。
没有。在JSON "/"
和"\/"
是等价的。
您在问题中列出的JSON有效(您可以使用jsonlint进行测试)。您的问题可能与json_encode
和之间发生了什么有关parseJSON
。
问题内容: 我试图使用Gson将Java对象转换为json。但是当我尝试打印出来时,我得到了这个JSON {“ user”:“ {\” email \“:\” abc@gmail.com \“,\” lastName \“:\” Las \“,\” name \“:\” amy \“,\” password \“:\” qwe123 \“,\”电话\“:\” 8901245244 \“}”} 我试
我正在Jersey上构建REST服务,并使用Jackson从我模型的java类生成JSON。模型具有绝对简单的值,我认为这是最典型的情况。但我得到了奇怪的结果: 我的期待结果: 我的字段源值不包含任何特殊字符。这些是简单的单词。 这是我的Java类。实体: Rest服务等级: 我尝试使用注释JsonRawValue来表示字符串属性: 但在这种情况下,结果是: 我期望: 很明显,Jackson以某种
问题内容: 当我创建一个包含反斜杠的字符串时,它们会重复: 为什么? 问题答案: 你们看到的是代表的由它的创建方法。如果您进行打印,则可以看到实际上有一个反斜杠,如您所愿: 下面的字符串中包含三个字符,而不是四个: Python在字符串中表示反斜杠,因为反斜杠是转义字符-例如,表示换行符和表示制表符。 有时这会给您带来麻烦: 当Python返回字符串的表示形式时,它将起到安全的作用,转义所有反斜杠
问题内容: 为什么用显示器输出该日期? 如何转换为? 问题答案: 在PHP 5.4中,可以使用: 否则,您必须进行一些琐碎的后处理 请注意,这是表示JSON 的有效方法。
要发布一个插件,我必须更改代码以使用Wordpress HTTP API。 因此,我翻译了我的代码。 之前。 之后 但是对于函数wpremotepost我有这个问题。 当JSON数据发送到远程主机时,数据内部带有反斜杠。 示例: 怎么啦? 我在翻译原点代码时有错吗? 我需要一些帮助来发送没有这些转义字符的JSON数据。 多谢了。
问题内容: 如何删除字符串上的反斜杠?什么时候使用? 例如: 注意:当您回显$ str时,不会有任何问题…但是,当您使用回显时,反斜杠将会出现。 有办法解决吗? 问题答案: