1,基础
这篇文章讲的比较深入,所以不用我画蛇添足了,只是下面这段代码很好的演示了JSON如何处理字符串数据,保存下来备查:
zt from:https://www.ibm.com/developerworks/cn/web/wa-lo-json/
将 String 对象编码为 JSON 格式时,只需处理好特殊字符即可。另外,必须用 (") 而非 (') 表示字符串:
复制代码 代码如下:
static String string2Json(String s) {
StringBuilder sb = new StringBuilder(s.length()+20);
sb.append('\"');
for (int i=0; i<s.length(); i++) {
char c = s.charAt(i);
switch (c) {
case '\"':
sb.append("\\\"");
break;
case '\\':
sb.append("\\\\");
break;
case '/':
sb.append("\\/");
break;
case '\b':
sb.append("\\b");
break;
case '\f':
sb.append("\\f");
break;
case '\n':
sb.append("\\n");
break;
case '\r':
sb.append("\\r");
break;
case '\t':
sb.append("\\t");
break;
default:
sb.append(c);
}
}
sb.append('\"');
return sb.toString();
}

2,在PHP中的应用。
PHP中使用json_encode和json_decode来进行JSON封装和拆装。
封装string类型数据:json_encode在输出结果中,会在源字符串两端加上("),如对象内容是(abc),结果是("abc”)
封装stdClass对象类型数据:比如有个"value”成员内容是字符串,结果是:{"value":"\u5e7f\u4e1c\u4f53\u80b2,CCTV5"}
3,为什么要写这个。
ZenTaoPHP框架中,请求类型如果是“json”,输出结果会以JSON格式封装,但在对输出信息进行分析时,发现并非标准的JSON格式。
深究后,发现ZenTaoPHP对一部分数据进行了二次JSON封装,输出类似:"{\"value\":\"\\u5e7f\\u4e1c\\u4f53\"}" 这样的结果。
华山资源网 Design By www.eoogi.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
华山资源网 Design By www.eoogi.com