PHP實戰(zhàn)開發(fā)教程PHPCMS二次開發(fā)URLMV.ppt
《PHP實戰(zhàn)開發(fā)教程PHPCMS二次開發(fā)URLMV.ppt》由會員分享,可在線閱讀,更多相關《PHP實戰(zhàn)開發(fā)教程PHPCMS二次開發(fā)URLMV.ppt(14頁珍藏版)》請在裝配圖網上搜索。
北風網PHPCMS二次開發(fā) URL與MVC 講師 胖龍 北風網版權所有 剖析PHPCMS PHPCMS的默認URL規(guī)則 訪問欄目首頁 http your url index php m content c index a lists catid 6訪問內容頁 http your url index php m content c index a show catid 1 id 9訪問公告頁 http your url index php m announce c index a show aid 4訪問搜索結果頁 http your url index php m search c index a init typeid 1 q a siteid 1 time all 默認URL規(guī)則 根據URL定位控制器程序文件 程序定義文件位置 PHPCMS安裝路徑 phpcms modules 模塊名稱 控制器名稱 phpPHPCMS的運行過程 加載控制器定義文件實例化使用 控制器名稱 作為定義名稱的對象執(zhí)行實例化后的控制器對象的 使用 行為名稱 作為定義名稱的方法 MVC 什么是MVC MVC是一個設計模式 它強制性的使應用程序的輸入 處理和輸出分開 使用MVC應用程序被分成三個核心部件 M 模型Model V 視圖View C 控制器Controller它們各自處理自己的任務 模型響應狀態(tài)查詢更新數據 視圖發(fā)送用戶輸入給控制器將程序結果展示給用戶 控制器定義應用程序業(yè)務流根據用戶動作調用模型根據用戶動作調用視圖 查詢數據更新數據 調用視圖 用戶請求 獲取數據 MVC 視圖 視圖是用戶看到并與之交互的界面 對老式的Web應用程序來說 視圖就是由HTML元素組成的界面 在新式的Web應用程序中 HTML依舊在視圖中扮演著重要的角色 但一些新的技術已層出不窮 它們包括AdobeFlash和象XHTML XML XSL WML等一些標識語言和Webservices 如何處理應用程序的界面變得越來越有挑戰(zhàn)性 MVC一個大的好處是它能為你的應用程序處理很多不同的視圖 在視圖中其實沒有真正的處理發(fā)生 不管這些數據是聯機存儲的還是一個雇員列表 作為視圖來講 它只是作為一種輸出數據并允許用戶操縱的方式 MVC 模型 模型表示企業(yè)數據和業(yè)務規(guī)則 在MVC的三個部件中 模型擁有最多的處理任務 例如它可能用象EJBs這樣的構件對象來處理數據庫 被模型返回的數據是中立的 就是說模型與數據格式無關 這樣一個模型能為多個視圖提供數據 由于應用于模型的代碼只需寫一次就可以被多個視圖重用 所以減少了代碼的重復性 MVC 控制器 控制器接受用戶的輸入并調用模型和視圖去完成用戶的需求 所以當單擊Web頁面中的超鏈接和發(fā)送HTML表單時 控制器本身不輸出任何東西和做任何處理 它只是接收請求并決定調用哪個模型構件去處理請求 然后確定用哪個視圖來顯示模型處理返回的數據 MVC 優(yōu)點 大部分用過程語言比如ASP PHP開發(fā)出來的Web應用 初始的開發(fā)模板就是混合層的數據編程 例如 直接向數據庫發(fā)送請求并用HTML顯示 開發(fā)速度往往比較快 但由于數據頁面的分離不是很直接 因而很難體現出業(yè)務模型的樣子或者模型的重用性 產品設計彈性力度很小 很難滿足用戶的變化性需求 MVC要求對應用分層 雖然要花費額外的工作 但產品的結構清晰 產品的應用通過模型可以得到更好地體現 首先 最重要的是應該有多個視圖對應一個模型的能力 在目前用戶需求的快速變化下 可能有多種方式訪問應用的要求 例如 訂單模型可能有本系統的訂單 也有網上訂單 或者其他系統的訂單 但對于訂單的處理都是一樣 也就是說訂單的處理是一致的 按MVC設計模式 一個訂單模型以及多個視圖即可解決問題 這樣減少了代碼的復制 即減少了代碼的維護量 一旦模型發(fā)生改變 也易于維護 其次 由于模型返回的數據不帶任何顯示格式 因而這些模型也可直接應用于接口的使用 再次 由于一個應用被分離為三層 因此有時改變其中的一層就能滿足應用的改變 一個應用的業(yè)務流程或者業(yè)務規(guī)則的改變只需改動MVC的模型層 控制層的概念也很有效 由于它把不同的模型和不同的視圖組合在一起完成不同的請求 因此 控制層可以說是包含了用戶請求權限的概念 最后 它還有利于軟件工程化管理 由于不同的層各司其職 每一層不同的應用具有某些相同的特征 有利于通過工程化 工具化產生管理程序代碼 MVC 不足 MVC的不足體現在以下幾個方面 增加了系統結構和實現的復雜性 對于簡單的界面 嚴格遵循MVC 使模型 視圖與控制器分離 會增加結構的復雜性 并可能產生過多的更新操作 降低運行效率 視圖與控制器間的過于緊密的連接 視圖與控制器是相互分離 但確實聯系緊密的部件 視圖沒有控制器的存在 其應用是很有限的 反之亦然 這樣就妨礙了他們的獨立重用 視圖對模型數據的低效率訪問 依據模型操作接口的不同 視圖可能需要多次調用才能獲得足夠的顯示數據 對未變化數據的不必要的頻繁訪問 也將損害操作性能 歡迎訪問我們的官方網站- 配套講稿:
如PPT文件的首頁顯示word圖標,表示該PPT已包含配套word講稿。雙擊word圖標可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設計者僅對作品中獨創(chuàng)性部分享有著作權。
- 關 鍵 詞:
- PHP 實戰(zhàn) 開發(fā) 教程 PHPCMS 二次開發(fā) URLMV
裝配圖網所有資源均是用戶自行上傳分享,僅供網友學習交流,未經上傳用戶書面授權,請勿作他用。
鏈接地址:http://m.jqnhouse.com/p-6402353.html