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

2021-06-16 06:07:52 字數 588 閱讀 4731

d()和m()方法的區別: d

和m的區別主要在於 m

方法不需要建立模型類檔案,

m方法不會讀取模型類,所以預設情況下自動驗證是無效的,

但是可以通過動態賦值的方式實現 而

d方法必須有建立模型類。

我們可以用下面兩種方法去建立乙個資料表的對映物件

第一種:$test = d('test')

第二種:$test = new model('test')

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

資料驗證上有很大的不同,

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

如果用第二種就沒有了·····

還有1個區別就是當用了$truetablename後,必須用$test=d('test'),表示查詢的是test表,

如果用的是$test=m('test'),那麼都表示查詢的資料邊是think_test。

thinkphp2.0版本測試有如此上面的問題

thinkphp中的M方法和D方法

thinkphp 中m方法和d方法都用於例項化乙個模型類,m方法 用於高效例項化乙個基礎模型類,而 d方法 用於例項化乙個使用者定義模型類。使用m方法 如果是如下情況,請考慮使用 m方法 1.對資料表進行簡單的 curd 操作而無複雜的業務邏輯時 2.只有個別的表有較為複雜的業務邏輯時,將 m方法 ...

ThinkPHP 中M方法和D方法的具體區別

thinkphp 中m方法和d方法都用於例項化乙個模型類,m方法 用於高效例項化乙個基礎模型類,而 d方法 用於例項化乙個使用者定義模型類。如果是如下情況,請考慮使用 m方法 對資料表進行簡單的 curd 操作而無複雜的業務邏輯時 只有個別的表有較為複雜的業務邏輯時,將 m方法 與例項化 commo...

ThinkPHP 中M方法和D方法的具體區別

thinkphp 中m方法和d方法都用於例項化乙個模型類,m方法 用於高效例項化乙個基礎模型類,而 d方法 用於例項化乙個使用者定義模型類。如果是如下情況,請考慮使用 m方法 對資料表進行簡單的 curd 操作而無複雜的業務邏輯時 只有個別的表有較為複雜的業務邏輯時,將 m方法 與例項化 commo...