程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> 解析thinkphp中的M()與D()方法的區別

解析thinkphp中的M()與D()方法的區別

編輯:關於PHP編程

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版本測試有如此上面的問題

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved