下面进行说明XML转换为JSON的相关技巧,乍一看起来,似乎有一个“为什么要转换它们”的疑问。因为XML和JSON有着相似的目的和作用,可是很多时候,在浏览器中处理 JSON数据会比XML要容易的多。
以前很多的Web服务会进行XML转换为JSON,必须再经过转换处理才能够使用。这就是IBM发表该文章的由来,这里引用了一部分 文章中的内容。"越来越多的应用程序需要将XML数据转换为JSON数据,个别的基于Web的服务也突然出现了这样的转换功能。#t#
IBM的T.J.Watson研究中心开发了 一种特别的方法去使用PHP来实现转换,这种方法接受XML的输入,并且输出转换为JSON格式的数据,这个基于PHP的解决方案提供了几个优点:
1,可以运行在离线模式下,用命令行来执行
2,包含一个已经存在的服务器内置代码
3,在Web主机上轻松的使用Web Service服务
如果你正在网站工作,特别是你需要使用其他网站提供的Web Service获取数据到自己的网站,那么你就应该读一下这篇文章。它很简短,假如你之前比较熟悉XML转换为JSON,那么可以跳过“基础”部分,了解文章的具体内容和代码请访问:
- <root root_att1="root_att1_value" root_att2="root_att2_value">
- <node1 node1_att1="node1_att1_value" node1_att2="node1_att2_value">node1_value</node1>
- <node2 node2_att1="node2_att1_value" node2_att2="node2_att2_value">node2_value</node2>
- </root>
- 转化后:
- var jsonObj = {
- root : {
- '$root_att1' : 'root_att1_value',
- '$root_att2' : 'root_att2_value',
- 'node1' : {
- '$' : 'node1_value',
- '$node1_att1' : 'node1_att1_value',
- '$node1_att2' : 'node1_att2_value'
- },
- 'node2' : {
- '$' : 'node2_value',
- '$node2_att1' : 'node2_att1_value',
- '$node2_att2' : 'node2_att2_value'
- }
- }
- }