我有理由選擇JSON over XML,反之亦然?在處理數據饋送時優化性能的技巧也受到讚賞!PHP更快處理/更容易在PHP中使用; XML或JSON,以及file_get_contents或cURL?
3
A
回答
9
談到PHP時,我選擇XML over JSON的原因之一是,即使在PHP 5中,也沒有官方支持的API遍歷。你可以編碼,你可以解碼,就是這樣。沒有驗證,沒有有效的方式來遍歷鍵/值對,總而言之,對它的支持很少。不要誤解我的意思,你可以使用foreach循環結構,但它確實很麻煩。 JSON被吹捧爲一種偉大的數據交換格式,因爲JavaScript可以輕鬆理解詞法結構。所以當你從PHP轉到JavaScript時,它很棒,但是當你從JavaScript到PHP或PHP到PHP時,那麼JSON並不是數據交換的最佳選擇。
5
我會自己去用JSON,只是因爲XML非常笨拙和過分難以解析。 JSON體積小,整潔,因此可以節省帶寬,並且還可以加快響應時間,因爲它更容易生成,傳輸更快,解碼速度更快。
2
無論選擇哪種方法,當您選擇序列化IO數據時,序列化機制都應該是透明且可替換的。如果你發現JSON不適合你,你應該能夠換出你在前後使用的序列化器,並且你的數據結構保持不變。
也就是說,我傳輸的大部分數據數組都是簡單的大鍵值樹。我發現當它們不包含在XML序列化中時,它更容易閱讀我的數據結構。
1
關於file_get_contents()與cURL的性能,我相信cURL會稍微快一點。對於您的應用程序,您可以運行一些快速基準來比較兩種方法。
更重要的是,我寧願因爲捲曲的file_get_contents()將不會在目前已實施的安全性更高級別的PHP環境中工作(例如,了allow_url_fopen設置通常是禁用)。如果你的應用程序只能運行在你自己的環境(你控制的)上,file_get_contents()會很好,但否則我會用cURL來實現可移植性。
相關問題
- 1. file_get_contents或curl在php中?
- 2. 在PHP中使用CURL,FOPEN或FILE_GET_CONTENTS獲取XML響應
- 3. PHP比cURL更快?
- 4. 在iPhone應用程序中更快/更容易使用:XML還是JSON?
- 5. 在PHP中處理多個cURL請求的速度更快
- 6. PHP或JQUERY JSON處理
- 7. 哪個更快?使用PHP的cUrl庫或調用curl實用程序shell_exec()
- 8. 使用代理時PHP cURL與file_get_contents
- 9. CURL或file_get_contents更新供稿列表?
- 10. PHP:什麼是最快的SOAP,file_get_contents或Curl?
- 11. PHP(cURL,headers,COOKIES)以及更多
- 12. 在PHP中,更快:preg_split或explode?
- 13. 使用PHP處理xml文件的更快方式
- 14. PHP:更快的cURL執行
- 15. php fsockopen curl file_get_contents
- 16. 使用php以更快的方式獲取內容使用php
- 17. Python - 解析Json或XML更快嗎?
- 18. Rails的Ajax支持是否使得JSON或XML更容易使用?
- 19. PHP:使用curl或file_get_contents無法檢索正確的ajax響應
- 20. 什麼是更快:include()或file_get_contents()?
- 21. curl或file_get_contents不起作用
- 22. 在PHP中處理cURL
- 23. 無法讓cURL或file_get_contents在PHP中工作
- 24. 更改使用Javascript或PHP
- 25. 在Rails中處理JSON或XML
- 26. 更快在MYSQL中查詢或使用PHP邏輯
- 27. 在php中處理更快:多個$ _GETs或複製到新變量?
- 28. PHP中有什麼更快 - JSON或字符串列表?
- 29. mysql在刪除/更新或在代碼中處理(例如PHP)
- 30. C#XML或SQL更快嗎?
我不確定我100%同意這一點。除非你在談論大量的數據,否則遍歷PHP中的關聯數組並不麻煩。更何況有大量的工具和函數可用於數組操作。 – 2008-11-03 17:57:48