2010-06-10 51 views
3

我已經寫了一個CMS,它使用PHP函數json_encode通過Ajax請求發送一些數據。如何使用json_encode不使用PHP 5.2

不幸的是,我試圖將它加載到運行PHP 5.1版本的服務器上,json_encode PHP函數在5.2.0之前版本的PHP上不可用。

有沒有人知道一種方法來編碼一個PH數組作爲JSON,而不使用內置的json_encode函數?

編輯

我用佩卡的功能,但現在我發現按預期jQuery將無法解析的結果。即使Firebug顯示JSON被傳回。我的螢火蟲窗口如下所示:alt text http://www.freeimagehosting.net/uploads/b5a5e5855b.jpg

和我的jQuery看起來是這樣的:

 $.ajax({ 
      type: "GET", 
      url: "includes/function/add_users.php", 
      data: str, 
      dataType: 'json', 
      cache: false, 
      beforeSend: function(html){ 
        $('#editbox').html('<img class="preloader" src="images/ajax-loader.gif"/>'); 
      }, 

      success: function(html){ 
       fields = html; 
       $('#div1').html(fields['username']); 
       $('#div2').html(fields['fname']); 

不過的div:#DIV1和#DIV2不會加載正確的數據。

爲什麼?

+0

我假設你已經正確關閉了ajax聲明?關閉成功功能,然後整體ajax功能? – 2011-03-15 16:31:40

+1

是的,他們被正確關閉,我只是包括相關部分的代碼 – Ash 2011-03-16 10:06:49

回答

4

json_encode的用戶註釋有很多實現。匆匆一瞥,this one看起來最適合我。

如果您有權訪問PECL,我會使用@Artefacto建議的擴展名。

+0

好吧,我正在測試它... – Ash 2010-06-10 11:40:45

+0

確定,工作正常 - 螢火蟲顯示JSON通過。然而,jquery不喜歡它... – Ash 2010-06-10 12:03:42

+0

@Ashley也許顯示一些示例JSON ... – 2010-06-10 12:05:24