PHP MVC 模式(1)_PHP教程

來源:互聯網
上載者:User
PHP進階程式設計 學習筆記 2014.06.18

MVC (Model-View-Controller,模型-視圖-控制器)是一種可以簡化應用程式開發和維護的非常常用的設計模式。它從邏輯上把應用程式分隔為個部分。模型部分負責應用程式的商務邏輯,封裝訪問資料庫的方法並提供一個可以重用的類庫。視圖部分控制了資料的外觀並提供從使用者收集資料的機制。控制器部分,負責將所有的事項串連起來,負責從視圖收集資料,並決定程式的執行邏輯。調用模型的機制並解析返回的資料,然後將資料提交給視圖展示給客戶。選擇合適的架構要考慮五個關機因素:架構、文檔、社區、支援和靈活性。

基於MVC的典型工作流程

設計師根據現存的業務需求以及應用程式所要實現的功能,製作一個靜態、單獨的原型設計。然後,交由開發人員評審。開發人員負責確保所有要求實現的功能均是可行的,如果開發人員沒有發現任何問題,他們就會建立一個開發計劃,其中包括API模型,然後再交由整合人員(負責控制器層)。如果原型出現問題,項目會回到設計人員手中,繼續迴圈前面的流程。

準備好原型和API模型後,整合工作就會開始。整合人員將研究原型設計,並將它轉換成範本語言,並將設計整合到網站URL結構中。然後編寫控制器,這一組件會將請求在WEB伺服器和他們需要操縱的模型資訊之間代理分發。結果產生之後,擷取視圖並輸出,並且控制器會提供所有動態內容的資料。

最後,API模型完全實現之後,就可以將應用程式交給測試人員了。如果模型開發人員嚴格遵守API編寫代碼,整合人員根據規範來編寫控制器,那麼測試工作將會順利進行。

MVC 應用程式

應用程式入口,MVC網站通常會實現一個用來處理WEB網站上所以請求的核心指令碼。這個檔案被稱為引導檔案。引導檔案負責初始化架構,其中包括類的自動載入,讀取配置,解析URL到模型,填充封裝了請求資訊,初始化控制器程式等操作。

引導完成後,前端控制器將被執行個體化,並接管程式的運行。前端控制器類是負責解釋請求變數的內建類,它把使用者端請求路由到動作控制器上的某個方法,這個方法被叫做動作,動作負責實現所有的功能。這個方法中將執行個體化模型類,解析視圖模板,並輸出結果。

模型一般不遵循任何特定的結構,而是存在與一個公用的位置中,所有它們可能被架構自動載入。模型是提供了所需的資料操作和解析能力的工具類。

視圖是模板,可以用任何範本語言來編寫。視圖的目的是不在視圖中包含任何類型的處理邏輯或者資料操作,並且只輸出由控制器提供的資料。範本語言(如:FastTemplate/Smarty)的選擇取決於能否和目標框架整合在一起。

http://www.bkjia.com/PHPjc/815975.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/815975.htmlTechArticlePHP進階程式設計 學習筆記 2014.06.18 MVC (Model-View-Controller,模型-視圖-控制器)是一種可以簡化應用程式開發和維護的非常常用的設計模式。它從...

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.