下面進行說明XML轉換為JSON的相關技巧,乍一看起來,似乎有一個“為什麼要轉換它們”的疑問。因為XML和JSON有著相似的目的和作用,可是很多時候,在浏覽器中處理 JSON數據會比XML要容易的多。
以前很多的Web服務會進行XML轉換為JSON,必須再經過轉換處理才能夠使用。這就是IBM發表該文章的由來,這裡引用了一部分 文章中的內容。"越來越多的應用程序需要將XML數據轉換為JSON數據,個別的基於Web的服務也突然出現了這樣的轉換功能。
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'
- }
- }
- }