我正在創建一個需要很多AJAX功能的網站。目前,我正在創建多個PHP文件,每個文件都包含每個AJAX「函數」的處理過程。我剛剛意識到另一種方法是創建一個所有AJAX調用都會請求的uber-PHP文件,並傳遞特定的「cmd」參數,指定要執行服務器端的功能。 這兩種方法都有優勢嗎?通常如何做?最好有一個超級PHP的AJAX文件或每個功能的文件?
回答
大型AJAX處理程序/調度程序腳本有一些整合機會。您可以在中心位置探測HTTP_X_REQUESTED_WITH
。如果您需要對某些功能進行適當授權,請針對所有請求進行操作。
顯然你也可以統一輸出格式/處理。您不需要複製標題響應,而只需編寫一次。
但是不要打擾評估這種或那種方法背後的性能理論。除非你需要一個非常簡單的回調函數(例如字典檢查),它可以從一個單獨的腳本中受益,用一個大的ajax腳本處理它。中央腳本通常會提供安全和維護優勢。
太棒了。非常感謝您的建議。 – rewolf 2011-05-29 20:27:38
我在開發和測試時使用一個怪物文件 - 然後將它拆分成更小的塊進行部署。
當然,如果服務器爲了達到給定任務實際需要的20個進程而有1200行處理,性能會受到影響。
從單獨的文件中導入大量不必要的「工具」也是如此。
做到每戶任務一次,部署
之前 - 而不是每天10.000.000倍 - 這只是常識
它有助於讓「標誌」在你的源代碼,以使腳本分開,並預先包括工具/桌子自動..
- 一些聰明的驢叫它不必要(和危險!)優化 - 他們只是懶惰:)
我個人做了一些。
我有一個主腳本,其中包含基於哪個腳本需要單獨腳本的require_once();
。 (使用switch
和「類型」get/post變量)。
這樣我就可以在中心位置處理某些事情,比如標題處理。
而且我也可以輕鬆分離腳本,而無需每次都讀取2k行文件。
- 1. 最好找一個文件
- 2. PHP中每個文件只有一個或多個函數?
- 3. ajax拉一個php文件
- 4. 每個功能一個文件...真的嗎?
- 5. 有條件的功能在一個等級寬恕功能
- 6. 會話超時優先級。超時描述哪個文件具有更高的優先級? Global.asax或web.config文件
- 7. 哪一個是最好的文件瀏覽器或文件的指揮官
- 8. jQuery,什麼是最好的,有整個站點或每頁基於一個文件綁定的所有綁定?
- 9. 最好的方法來寫一個超時的功能(posix C)
- 10. 應該jQuery的ajax去同一頁或另一個PHP文件?
- 11. 更改include_path或prepend每個php文件
- 12. AJAX功能不運行PHP文件
- 13. PHP功能列出文件夾和文件,但檢測是一個文件夾時,或文件
- 14. 配置文件只有一個功能(或成本中心)GHC
- 15. 海量的CSS文件,或每個頁面的單個文件?
- 16. 把我所有的Ajax代碼放在一個PHP文件中是不好的?
- 17. 兩個或更多ajax調用一個PHP文件
- 18. Lambda:下載多個文件在一個功能或單獨的功能是更好
- 19. PHP/Smarty - 每個文件都有它自己的語言文件
- 20. 如何執行一個目錄中的所有文件或基於args的單個文件的功能,在python
- 21. 調用一個JavaScript文件中的另一個JavaScript文件的功能
- 22. Php爲每個功能事件的循環Onclick功能
- 23. 一個簡單的。這是一個文件夾或一個php/py文件,帶有一個隱藏擴展
- 24. 使用AJAX從PHP文件中調用一個查詢,該文件有多個
- 25. MySQL:有一個索引和一個小的文件夾或沒有索引,沒有文件夾更好嗎?
- 26. 是否有可能爲每個新的一天有一個新的文件log4cXX
- 27. 是一個大功能的php文件嗎?
- 28. PHP類,在另一個PHP文件中使用查詢功能
- 29. 如何訪問一個文件夾或文件的父文件夾的PHP
- 30. Unix:打印文件夾中每個文件超過80個字符的每行的文件名和行號
這取決於php文件將做多少工作,單獨的文件將幫助你更好地組織你的代碼 – Ibu 2011-05-29 20:17:47
和任何性能明智的影響? – rewolf 2011-05-29 20:20:00
性能方面的差異可以忽略不計。然而,我確實喜歡模塊化方法,仍然有一個可以調用別人的單一入口文件,更容易堅持DRY。 – Wrikken 2011-05-29 20:27:50