DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> XML學習教程 >> XML詳解 >> 闡述Json格式調用說明方法簡介
闡述Json格式調用說明方法簡介
編輯:XML詳解     

解決JSon格式問題的方法很簡單,直接針對自己的問題需要,可以直接將此數組進行拼串,但前提是要深入理解到底什麼是FrontPage服務器,及他是怎麼運作的, 在這裡拿出來和大家分享一下。

完善的 encode方法: 解決此問題的簡單方法就是 利用別人以完成的開源代碼: 首先想到 zend framework。  拿來  zf_JSon 包中的 Decoder.php, 和 Encoder.php。 Decoder.PHP其實只要將其中某個protect方法的 protect去掉就行。 具體操作忘了,讀者自行調試來解決。改寫好Decoder 類後,調用如下:

  1. $filepath  =  $_SERVER['DOCUMENT_ROOT'];  
  2.  include $filepath.'/inc/JSon/Encoder.PHP';   
  3.  $encoder  = new Zend_JSon_Encoder(false);  
  4.  $JSon  = $encoder ->encode($result);   
  5.  header("X-JSON: $JSon"); 

由於很多使用JSon的地方還是在ajax調用中, 所以一些AJax '框架' 提供了decode方法:比如在prototype中, 如果PHP頁面包含了prototype.js, 那麼就可以直接來調用 function(transport, json) { 。。操作} 在其中取json數據 就是  JSon.a  ,JSon格式 等了。

另外:可能遇到問題,編碼。  zend framework返回的漢字編碼估計不大對應(不是說它不是utf-8)我的頁面編碼(utf-8),因此會有問題出現。因此對於某些驗證返回的報錯信息(漢字)會有影響。

  • 圖解JSON語法五大要素
  • 進行JSON和XML的操作說明介紹
  • 幾分鐘簡述JSON對象的相關技巧
  • 主要介紹JSon_decode 相關問題技巧說明
  • 詳細分析JSon string的相關問題

在這裡的替代方法就是使用傳統的接口返回數字代碼形式(通信網關經常采用的方法),比如返回 json.code 有 0,1,2,3等多種可能。則在JS端處理時, 0表示成功,1表示非法的客戶端數據,等等。 問題得到完美解決。

上面中,直接將這個字符串賦給一個變量,JSon格式就變成一個Javascript數組了(專業化術語應該不叫數組,不過由於PHP的習慣問題,我就一直叫數組好了,方便理解)。這樣,可以很方便的對arr進行遍歷或者任意做你想做的事情了。

寫到這裡,好像都沒提到AJax哦?是哦,聯想一下,如果服務端返回的responseText用JSON過的字符串代替XML的話,前台Javascript處理起來是不是很方便呢?狗皮膏藥就是這樣用的。

其實寫到這裡,除了數據的存儲格式不太一樣外,JSON和XML也沒什麼太大區別哦,不過下面我說的一點。雖然和XML沒多大關系,不過,可以說明JSON更大范圍的應用,那就是,跨域的數據調用。

由於安全性問題,JSon格式不支持跨域調用,這樣要調用不同域名下的數據,很麻煩哦,雖然有解決方案(stone在他的講座上提到過了代理啊什麼的雖然聽不懂但是知道能解決)。我寫兩個文件,足以展示跨域調用了。

XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved