thinkphp中M()和D()的理解


在tp框架中基於MVC設計模式中的model文件夾下,處理數據時會創建和表相關的模型類文件。在控制器中需要使用時需要實例化模型類對象,寫語句

1.$a  = new GoodsModel();

這是基於創建了GoodsModel.class.php文件,里邊可能寫有自己的個性化的方法。

而為了簡化這個代碼就可以使用函數D();這種稱為快捷函數,我理解就是快捷實例化模型的方法吧。

$goods_model  = D(“Goods”);

它與上邊代碼等價。他們都基於實實在在創建的模型文件。當D()的參數為空時,相當於創建了基類Model的實例。

因為系統自己有一些CURD的方法,在我們進行這些基本的操作時不用創建相關表的模型文件。直接實例化基類對象就可以調用。

這就用到了M()方法。它實例化的是基類Model的對象

$model = M();

 

而語句

$model = M(‘User’);

創建基類model對象,但是操作的數據表user

在調用個性化的方法即使你自己寫的函數時候,就不能用M()了,因為他不能調用子類的函數。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM