模型-檢視-控制器(MVC)

MVC 是什么?

MVC 是一種分離你的程式码的方式,取決於程式码在你的应用程序裡扮演何種角色。 在应用程序流程裡,它始於一个被載入的控制器,該控制器执行一个方法使用模型取回資料。 一旦完成,控制器決定要載入哪个檢視, 其中包含你的訪客能看見的輸出。

控制器

控制器类別被放在 APPPATH/classes/controllers

Fuel 的路由根據請求的 URL 決定要載入的控制器及被呼叫的方法。 这是你的应用程序開始運作的地方,控制器決定採取什么行动、 任何使用者輸入要做什么、什么資料被操縱、和顯示檢視給使用者。 然而控制器本身沒有这些東西,它呼叫模組和类別後去做这些事情。

閱讀更多關於 控制器

模型

模型类別被放在 APPPATH/classes/models

每當需要取回、操縱或刪除資料時,應始終藉由模型來完成。 模型是一些类型資料與變更它們的方法的代表。例如: 你不会把 SQL 查詢放在一个控制器,这些查詢被放在模型裡,且控制器会在呼叫模型後执行它們。 如此一來,如果你的資料庫改變,你将只要變更後面作用的模型, 而不需要變更你所有的控制器。

閱讀更多關於 模型

檢視

檢視被放在 APPPATH/views

檢視包含你的 HTML,它應該永遠不会在你的控制器,或任何其他不是專門为了建立輸出的类別被发现。 從你的邏輯來分離你的佈局,可以確保當你決定變更你的佈局時, 只需要變更檢視,而不需要關心控制器。
因此,檢視應該包含僅在 PHP 使用的 echoforeach

閱讀更多關於 檢視

表现控件

表现控件类別被放在 APPPATH/classes/presenter

一旦你的应用程序變得越來越複雜,你会发现很難決定是否一塊邏輯真的屬於控制器, 是否它是非常具體相關於檢視,且幾乎與你的应用程序邏輯無關? 这就是为什么要有表现控件;它們是你控制器與檢視間的膠水。

閱讀更多關於 表现控件