91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

thinkphp5中MVC分層的含義是什么

發布時間:2022-03-07 11:02:54 來源:億速云 閱讀:160 作者:iii 欄目:編程語言

這篇文章主要介紹“thinkphp5中MVC分層的含義是什么”,在日常操作中,相信很多人在thinkphp5中MVC分層的含義是什么問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”thinkphp5中MVC分層的含義是什么”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

在thinkphp5中,MVC分層指的是模型層、視圖層和控制器層分工合作,邏輯層和表現層進行分開的操作;模型層負責數據庫操作,控制器就是一個模塊類,根據url進行調度和操作,視圖用于連接action控制器和模板文件。

本文操作環境:Windows10系統、ThinkPHP5版、Dell G3電腦。

thinkphp5中MVC分層是什么

MVC,M模型,V視圖,C控制器。

分層,就是分工合作,邏輯層和表現層進行分開的操作。模型負責:數據庫操作。控制器:任何一個WEB操作都是一個模塊的某個操作,控制器就是一個模塊類,根據url進行調度和操作。視圖(view類和模版文件組成):連接action控制器和模版文件,Action類把數據通過View類傳遞到模板文件,而模板文件把接收到的數據轉換成相應的數據格式顯示。

ThinkPHP基于MVC(Model-View-Controller,模型-視圖-控制器)模式,并且均支持多層(multi-Layer)設計。

模型(Model)層

默認的模型層由Model類構成,但是隨著項目的增大和業務體系的復雜化,單一的模型層很難解決要求,多層Model的支持設計思路很簡單,不同的模型層仍然都繼承自系統的Model類,但是在目錄結構和命名規范上做了區分。

例如在某個項目設計中需要區分數據層、邏輯層、服務層等不同的模型層,我們可以在模塊目錄下面創建model、logic和service目錄,把對用戶表的所有模型操作分成三層:

數據層:model/User 用于定義數據相關的自動驗證和自動完成和數據存取接口

邏輯層:logic/User 用于定義用戶相關的業務邏輯

服務層:service/User 用于定義用戶相關的服務接口等

而這三個模型操作類統一都繼承\think\Model類即可。

對模型層的分層劃分是很靈活的,開發人員可以根據項目的需要自由定義和增加模型分層,你也完全可以只使用Model層。

視圖(View)層

視圖層由模板和模板引擎組成,在模板中可以直接使用PHP代碼,模板引擎的設計會在后面講述,通過驅動也可以支持其他第三方的模板引擎。視圖的多層可以簡單的通過目錄區分,例如:

view/default/user/add.html
view/blue/user/add.html

復雜一點的多層視圖還可以更進一步,采用不同的視圖目錄來完成,例如:

view 普通視圖層目錄

mobile 手機端訪問視圖層目錄

控制器(Controller)層

ThinkPHP的控制器層由核心控制器和業務控制器組成,核心控制器由系統內部的App類完成,負責應用(包括模塊、控制器和操作)的調度控制,包括HTTP請求攔截和轉發、加載配置等。業務控制器則由用戶定義的控制器類完成。多層業務控制器的實現原理和模型的分層類似,例如業務控制器和事件控制器:

controller/User //用于用戶的業務邏輯控制和調度
event/User //用于用戶的事件響應操作

controller\User負責外部交互響應,通過URL請求響應,例如 http://serverName/User/index,而 event\User 負責內部的事件響應,并且只能在內部調用,所以是和外部隔離的。多層控制器的劃分也不是強制的,可以根據應用的需要自由分層。控制器分層里面可以根據需要調用分層模型,也可以調用不同的分層視圖。

到此,關于“thinkphp5中MVC分層的含義是什么”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

临湘市| 鄯善县| 湖南省| 尼勒克县| 巴马| 增城市| 广昌县| 鲁山县| 沁阳市| 衡阳县| 福清市| 望都县| 阿图什市| 岳普湖县| 南木林县| 美姑县| 北安市| 板桥市| 隆化县| 巴青县| 龙江县| 和政县| 辽阳市| 德钦县| 临汾市| 内乡县| 中江县| 南宫市| 甘南县| 金华市| 福清市| 白玉县| 水城县| 漾濞| 巫溪县| 遂宁市| 宝鸡市| 南华县| 赤水市| 榕江县| 阳谷县|