摘要:方法和方法的區(qū)別中方法和方法都用于實(shí)例化一個(gè)模型類,方法用于高效實(shí)例化一個(gè)基礎(chǔ)模型類,而方法用于實(shí)例化一個(gè)用戶定義模型類。以上是對(duì)方法和方法區(qū)別的一些總結(jié),方法和方法要根據(jù)實(shí)際情況來(lái)具體選擇。
M方法和D方法的區(qū)別
ThinkPHP 中M方法和D方法都用于實(shí)例化一個(gè)模型類,M方法 用于高效實(shí)例化一個(gè)基礎(chǔ)模型類,而 D方法 用于實(shí)例化一個(gè)用戶定義模型類。
使用M方法如果是如下情況,請(qǐng)考慮使用 M方法:
對(duì)數(shù)據(jù)表進(jìn)行簡(jiǎn)單的 CURD 操作而無(wú)復(fù)雜的業(yè)務(wù)邏輯時(shí)
只有個(gè)別的表有較為復(fù)雜的業(yè)務(wù)邏輯時(shí),將 M方法 與實(shí)例化 CommonModel 類進(jìn)行結(jié)合使用
M方法 甚至可以簡(jiǎn)單看著就是對(duì)參數(shù)表名對(duì)應(yīng)的數(shù)據(jù)表的操作:
$User = M("User");使用D方法
如果是如下情況,請(qǐng)考慮使用 D方法:
需要使用 ThinkPHP 模型中一些高級(jí)功能如自動(dòng)驗(yàn)證功能(create()方法中實(shí)現(xiàn))、關(guān)聯(lián)模型等
業(yè)務(wù)邏輯比較復(fù)雜,且涉及的表眾多
將業(yè)務(wù)邏輯定義在了自定義的模型類里面(Lib/Model目錄下),而想在操作中實(shí)現(xiàn)這些業(yè)務(wù)邏輯
另外 D方法 不支持跨項(xiàng)目調(diào)用,需要使用:
// 實(shí)例化 Admin 項(xiàng)目下面的 User 模型 $User = D("Admin.User"); // 啟用了項(xiàng)目分組 $User = D("User", "Admin");
提示:
啟用了項(xiàng)目分組后,Model 類并不必然對(duì)應(yīng)著項(xiàng)目分組。多個(gè)項(xiàng)目組之間共有的模型類,統(tǒng)一放在 Model 目錄下,可以直接使用D("ModelName") 實(shí)例化。而 D("User.UserInfo") 并不表示 User 一定是一個(gè)項(xiàng)目分組,也可以僅僅是對(duì) Model 下文件的一個(gè)分類目錄,D("User.UserInfo") 實(shí)例化的是 User 目錄下的 UserInfo 模型類。
M方法 和 D方法 都可以在模型類文件不存在的情況下直接使用的,但顯然 M方法 更高效;但要使用模型類里面業(yè)務(wù)邏輯,就必須使用 D方法。
一個(gè)比較形象的比喻就是:M方法 就如一臺(tái)剛裝好操作系統(tǒng)的電腦,只能使用一些基本功能;而 D方法 就如在裝好的系統(tǒng)上再安裝了一些如 Office、QQ 等應(yīng)用軟件,功能更加強(qiáng)大,同時(shí)整個(gè)電腦運(yùn)行速度也變慢了。
以上是對(duì) M方法和D方法區(qū)別的一些總結(jié),M方法 和 D方法 要根據(jù)實(shí)際情況來(lái)具體選擇。
原文鏈接:http://blog.163.com/litianyichuanqi@126/blog/static/115979441201223043452383/
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/21120.html
摘要:本篇文章主要講述,如何在中使用中導(dǎo)出文件,是博主在實(shí)踐了好多篇?jiǎng)e人的帖子之后,總結(jié)歸納出來(lái)的文章,親測(cè)可用。我的博客歡迎騷擾原文地址用導(dǎo)出文件。將文件,重命名成。文章結(jié)束,歡迎轉(zhuǎn)載。 本篇文章主要講述,如何在thinkPHP中使用PHPExcel中導(dǎo)出Excel文件,是博主在實(shí)踐了好多篇?jiǎng)e人的帖子之后,總結(jié)歸納出來(lái)的文章,親測(cè)可用。thinkPHP版本是3.2。 我的博客:Mine-...
摘要:相關(guān)信息,面向過(guò)程,面向?qū)ο螅p量級(jí)。輕量級(jí)功能實(shí)用,面向過(guò)程和面向?qū)ο蠡旌祥_發(fā)。找到文件為文件名為驗(yàn)證碼類沒(méi)有在自動(dòng)加載類中載入,需要手動(dòng)載入。底層的和會(huì)影響原始的框架中的引入,可以使用框架中提供的引入。 不使用框架的問(wèn)題 在實(shí)際工作中,如果不使用框架會(huì)遇到的問(wèn)題。 程序項(xiàng)目生命時(shí)間非常短(維護(hù)性,生命力弱) 分共協(xié)作開發(fā)項(xiàng)目,彼此代碼風(fēng)格不一致。 開發(fā)程序,喜歡挖坑。 開發(fā)者離職...
摘要:信息列表循環(huán)賦值分頁(yè)信息部分這一步是實(shí)現(xiàn)無(wú)刷新分頁(yè)的重點(diǎn),用到了的通信,通過(guò)與數(shù)據(jù)庫(kù)的交互,將獲取到的數(shù)據(jù)寫到模板中,替換掉之前的數(shù)據(jù)集,達(dá)到分頁(yè)的目的。 前言 thinkphp框架自帶的分頁(yè)類是每次翻頁(yè)都要刷新一下整個(gè)頁(yè)面,這種翻頁(yè)的用戶體驗(yàn)顯然是不太理想的,我們希望每次翻頁(yè)只刷新我們想要的數(shù)據(jù)集部分的數(shù)據(jù),這樣我們很容易想到ajax異步通信,用ajax與數(shù)據(jù)庫(kù)(本人在開發(fā)過(guò)程中使用...
摘要:前言注冊(cè)時(shí)經(jīng)常需要用到短信驗(yàn)證碼,本文記錄一下思路和具體實(shí)現(xiàn)。短信驗(yàn)證平臺(tái)使用云片,短信驗(yàn)證碼的生成使用。云片發(fā)送短信驗(yàn)證碼到指定手機(jī)號(hào)。用戶輸入短信驗(yàn)證碼。 前言 注冊(cè)時(shí)經(jīng)常需要用到短信驗(yàn)證碼,本文記錄一下思路和具體實(shí)現(xiàn)。短信驗(yàn)證平臺(tái)使用云片,短信驗(yàn)證碼的生成使用thinkphp。 思路 1、用戶輸入手機(jī)號(hào),請(qǐng)求獲取短信驗(yàn)證碼。2、thinkphp生成短信驗(yàn)證碼,存儲(chǔ),同時(shí)和其他參數(shù)...
摘要:后來(lái)網(wǎng)上看到了很多和搭建的靜態(tài)博客,由于編輯器的實(shí)用性,及,等代碼托管平臺(tái)的免費(fèi)特點(diǎn),讓很多人都轉(zhuǎn)向了和。于是我也花了兩三天的時(shí)間來(lái)研究搭建了自己的博客。 以前的博客(blog.duweibin.cn)是在學(xué)習(xí)thinkphp的時(shí)候自己做的一個(gè)小項(xiàng)目,模板也是網(wǎng)上找的,后臺(tái)是自己用thinkphp框架寫的,上一個(gè)博客搭建過(guò)程中讓自己學(xué)會(huì)了thinkphp對(duì)MVC操作,(M層還沒(méi)具體用過(guò)...
閱讀 1322·2021-09-22 15:09
閱讀 2656·2021-08-20 09:38
閱讀 2402·2021-08-03 14:03
閱讀 863·2019-08-30 15:55
閱讀 3368·2019-08-30 12:59
閱讀 3551·2019-08-26 13:48
閱讀 1886·2019-08-26 11:40
閱讀 647·2019-08-26 10:30