我正在編寫一個PHP MVC框架。現在,當我開始編碼時,我發現我迷失在實現應該去的地方:Index.php router.php registry et al。 我迷失了我應該在哪裏加載基本控制器和Model等。是否有任何圖表顯示適用於PHP的MVC流?不是一般的MVC模式,而是基於PHP的? 我已經閱讀了很多教程,並說,他們不使用相同的技術!事件流:PHP MVC模式
回答
警告:這個答案是過時的,並且根據我大約6年前就有了「理解」。我會盡量在可預見的將來更新。
有沒有單一的「正確的方式」打賭有地獄很多錯誤的。
我只能解釋我對主觀的看法。這裏是爲了:
- 的index.php
- 套環境常數
- 負載bootstrap.php中
- bootstrap.php中(存在外DOCUMENT_ROOT)
- 登記自動加載器
- 加載
router
配置 - 路由器從路徑集的輸入數據
- 創建
model factory
- 創建
controller
,通過數據從路由器確定- 需要在構造
- 創建
view
模型工廠內,由控制器確定的(V和C有1:1的關係) - 在控制器上執行動作,d從路由器的數據etermined
- 使用模型工廠創建新
models
- 結合模型,查看模型
- 變化狀態
- 變化的視圖狀態
- 使用模型工廠創建新
- 視圖渲染頁面
- 請求綁定模型的數據
- 確定哪個
templates
到用途
這或多或少如下所謂的模型2或Web MVC結構。
這些模型負責業務邏輯,查看與呈現邏輯的交易和控制器將兩者連接在一起並根據傳入參數改變狀態。
我在帖子中找到了這張圖。我認爲這是好的。讓我消化你的解釋,因爲他們似乎很有道理 http://stackoverflow.com/questions/2180106/what-is-the-mvc-program-flow –
什麼是模型工廠和自動加載器? –
@Stefano Autoloader會是一個基於[spl_autoload_register()](http://php.net/manual/en/function.spl-autoload-register.php)的類(或者甚至可能是單一函數)。這是PHP中用於簡化類的工作的機制。至於模特兒工廠,您需要觀看視頻[1](http://www.youtube.com/watch?v=RlfLCWKxHJ0)和[2](http://www.youtube.com/watch?v=- FRm3VPhseI)瞭解這一點。基本上它是一個爲您創建不同模型的類(如果您需要,可以使用數據庫訪問或緩存)。 –
- 1. 事件流數據模型
- 2. MVC模型流?
- 3. 應用/ MVC事件模型
- 4. JemmmyFX事件模式
- 5. 使用MVC模式驗證Joomla組件中的工作流程
- 6. Mvc文件流
- 7. 流HAR事件
- 8. 用spring mvc流式傳輸大文件
- 9. 從無效擴展的事件模式中創建Observable流
- 10. MVC模式澄清
- 11. 更新模板時的流星事件
- 12. 事件中的流星更新模板
- 13. 流星模板事件功能錯誤
- 14. Dynamicaly爲流星模板添加事件
- 15. 流星「這個」模板中的事件
- 16. 流星動態模板事件
- 17. MVC模式的完整日曆事件數組
- 18. 在Java中事件MVC模式啓用按鈕
- 19. .net mvc事件/安排與響應式設計的模板
- 20. MVC JavaScript模式
- 21. 未定義指數PHP的MVC模式
- 22. php mvc更改默認url模式
- 23. 弱事件模式Silverlight 3
- 24. 域事件設計模式
- 25. Bootstrap模式onload事件
- 26. 魯棒C++事件模式
- 27. 籌集事件的模式
- 28. 委派事件的模式
- 29. MVVM備用事件模式
- 30. 使用域事件模式
試圖檢查下面的鏈接有什麼,我需要: http://stackoverflow.com/questions/3153347/need-guidance-regarding-the-correct-flow-of-my-php -mvc-framework –
[Form following function](http://en.wikipedia.org/wiki/Form_follows_function)。除非您對各種組件有特定需求,否則實現諸如MVC之類的模式幾乎沒有什麼好處。一旦需求退出,模式將自我定義([with](http://oreilly.com/php/archive/mvc-intro.html)[a](http://anantgarg.com/2009/03/13/write-your-own-php-mvc-framework-part-1 /)[小](http://php-html.net/tutorials/model-view-controller-in-php/)[help] (http://en.wikipedia.org/wiki/Model%E2%80%93view%E2%80%93controller))。 –