国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 開(kāi)發(fā) > ThinkPHP > 正文

在ThinkPHP 框架中快捷鍵M和D的不同之處

2024-09-09 15:19:38
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

ThinkPHP框架中快捷鍵M和D的不同之處在哪里呢?

D()和M()方法的區(qū)別:

D和M的區(qū)別主要在于M方法不需要?jiǎng)?chuàng)建模型類(lèi)文件,M方法不會(huì)讀取模型類(lèi),所以默認(rèn)情況下自動(dòng)驗(yàn)證是無(wú)效的,但是可以通過(guò)動(dòng)態(tài)賦值的方式實(shí)現(xiàn)而D方法必須有創(chuàng)建模型類(lèi)。

我們可以用下面兩種方法去創(chuàng)建一個(gè)數(shù)據(jù)表的映射對(duì)象

第一種:$Test = D(‘Test’)

第二種:$Test = new Model(‘Test’)

雖然這兩種都可以對(duì)數(shù)據(jù)進(jìn)行select,insert,delete,udpate操作,在數(shù)據(jù)驗(yàn)證上有很大的不同,用第一種方式實(shí)例一個(gè)模型就會(huì)有數(shù)據(jù)檢查功能,如果 title 沒(méi)有填寫(xiě)的話就會(huì)提示 “請(qǐng)輸入標(biāo)題” (這個(gè)是tp提供的一個(gè)自動(dòng)驗(yàn)證功能,當(dāng)然也需要在相應(yīng)的model中定義好驗(yàn)證條件);

如果用第二種就沒(méi)有了這個(gè)數(shù)據(jù)驗(yàn)證功能,需要手動(dòng)驗(yàn)證.

總結(jié)如下:

D函數(shù)實(shí)例化的是你當(dāng)前項(xiàng)目的Lib/Model下面的模塊,如果該模塊不存在的話,直接返回實(shí)例化Model的對(duì)象(意義就與M()函數(shù)相同).而M只返回,實(shí)例化Model的對(duì)象,它的$name參數(shù)作為數(shù)據(jù)庫(kù)的表名來(lái)處理對(duì)數(shù)據(jù)庫(kù)的操作.

通俗點(diǎn)說(shuō):

D就是實(shí)例化一個(gè)基于Model文件的Model。

M則是通過(guò)直接實(shí)例化Model方法(ThinkPHP基類(lèi))來(lái)動(dòng)態(tài)的實(shí)例化一個(gè)Model對(duì)象,即使這個(gè)對(duì)應(yīng)的Model文件不存在.

再通俗一點(diǎn)說(shuō):

M實(shí)例化參數(shù)是數(shù)據(jù)庫(kù)的表名。

D實(shí)例化的是你自己在Model文件夾下面建立的模型文件.

D就是在你沒(méi)有定義模型的時(shí)候,系統(tǒng)自動(dòng)幫你定義一個(gè)模型,這樣你才進(jìn)行簡(jiǎn)單的數(shù)據(jù)輸入或者輸出.

每一個(gè)Action文件都應(yīng)該對(duì)應(yīng)Model文件的,如果你定義了Model的話.

如:$Form = D(“User”)就可以改成$Form = new  UserModel();(User是指你的模型文件名).

發(fā)表評(píng)論 共有條評(píng)論
用戶(hù)名: 密碼:
驗(yàn)證碼: 匿名發(fā)表

圖片精選

主站蜘蛛池模板: 阿瓦提县| 汉川市| 宁晋县| 门头沟区| 沙湾县| 澎湖县| 扎赉特旗| 泌阳县| 湖南省| 德令哈市| 八宿县| 关岭| 铜梁县| 阳春市| 霍林郭勒市| 淮滨县| 沾化县| 保亭| 宜章县| 苏尼特右旗| 宣武区| 南通市| 靖西县| 西充县| 丘北县| 泾源县| 灵川县| 余庆县| 双牌县| 蒙阴县| 射阳县| 南投县| 井研县| 敦煌市| 普格县| 富川| 疏勒县| 灵武市| 姚安县| 玛沁县| 贵港市|