ThinkPHP中M方法与D方法使用区别

技术 回首页
312
头像
众网网络 2019-03-22

thinkhp中的m和d方法都用于实例化模型类,M方法用于高效地实例化基本模型类,D方法用于实例化用户定义的模型类。

如果使用m方法如下,请考虑使用m方法:当只有几个表具有更复杂的业务逻辑时,对数据表进行简单的凝乳操作而不需要复杂的业务逻辑,m方法和实例化的commonmodel类组合m方法甚至可以观察到对相应数据表参数表的操作很简单名称:1$user=m(“user”);

如果使用d方法如下,请考虑使用d方法:您需要在一些高级功能中使用thinkhp模型,例如自动验证函数(create()方法),相关模型(例如业务逻辑)很复杂,并且涉及多个表定义客户中的业务逻辑。OM模型类(model/lib目录),并且要实现业务逻辑和d在操作方法中不支持跨项目调用,需要使用:12$user=d(“user”,“admin”);//实例化用户模型$user=d(“)下面的管理项目。admin用户);//在启用项目分组的情况下,请注意,当启用项目分组时,模型类不一定与项目分组对应。多个项目团队共享的模型类统一放在模型目录中,可以直接用d(“modelname”)实例化。

d(“userinfo”)不一定意味着用户是一组项目,或者它可以只是模型下文件的分类目录。d(“userinfo”)实例化用户目录下的userinfo模型类。

当模型类文件不存在时,M方法和D方法都可以直接使用,但显然M方法更有效。但要在模型类中使用业务逻辑,必须使用方法d。

更直观的比喻是:m方法就像一台刚安装的计算机操作系统,只能使用一些基本功能;方法d就像在安装的系统上安装更多的应用软件,如office和qq。它的功能更强大,而且整个计算机运行速度较慢。

以上总结了M法和D法的区别。根据实际情况选择M法和D法。