中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

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

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

Thinkphp框架中D方法與M方法的區別是什么

發布時間:2021-02-06 23:09:38 來源:億速云 閱讀:214 作者:小新 欄目:開發技術

小編給大家分享一下Thinkphp框架中D方法與M方法的區別是什么,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

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

D和M的區別主要在于

M方法不需要創建模型類文件,M方法不會讀取模型類,所以默認情況下自動驗證是無效的,但是可以通過動態賦值的方式實現

而D方法必須有創建模型類。

我們可以用下面兩種方法去創建一個數據表的映射對象

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

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

雖然這兩種都可以對數據進行select,insert,delete,udpate操作,在

數據驗證上有很大的不同,

用第一種方式實例一個模型就會有數據檢查功能,如果 title 沒有填寫的話就會提示 “請輸入標題” (這個是tp提供的一個自動驗證功能,當然也需要在相應的model中定義好驗證條件);

如果用第二種就沒有了這個數據驗證功能,需要手動驗證。

總結如下:

D函數實例化的是你當前項目的Lib/Model下面的模塊。

如果該模塊不存在的話,直接返回實例化Model的對象(意義就與M()函數相同)。

而M只返回,實例化Model的對象。它的$name參數作為數據庫的表名來處理對數據庫的操作。

通俗點說:

D就是實例化一個基于Model文件的Model。

M則是通過直接實例化Model方法(ThinkPHP基類)來動態的實例化一個Model對象,即使這個對應的Model文件不存在。

再通俗一點說:

M實例化參數是數據庫的表名。

D實例化的是你自己在Model文件夾下面建立的模型文件。

D就是在你沒有定義模型的時候,系統自動幫你定義一個模型,這樣你才進行簡單的數據輸入或者輸出。

每一個Action文件都應該對應Model文件的,如果你定義了Model的話,

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

以上是“Thinkphp框架中D方法與M方法的區別是什么”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

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

AI

福海县| 桦甸市| 天全县| 莱芜市| 肇庆市| 青州市| 绩溪县| 石林| 澄江县| 遂平县| 南丰县| 大港区| 靖远县| 日土县| 吉林市| 固始县| 贵州省| 九龙城区| 周宁县| 阳新县| 盈江县| 宜川县| 莎车县| 鞍山市| 大连市| 修水县| 二连浩特市| 南宁市| 南靖县| 柳河县| 威宁| 丘北县| 谷城县| 兴和县| 高阳县| 申扎县| 启东市| 吐鲁番市| 虞城县| 宽甸| 临汾市|