解析thinkphp中的M()与D()方法的区别


Posted in PHP onJune 22, 2013

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版本测试有如此上面的问题

PHP 相关文章推荐
PHP中实现图片的锐化
Oct 09 PHP
PHP利用COM对象访问SQLServer、Access
Oct 09 PHP
PHP 和 XML: 使用expat函数(三)
Oct 09 PHP
php去掉字符串的最后一个字符附substr()的用法
Mar 23 PHP
thinkphp3.0 模板中函数的使用
Nov 13 PHP
PHP对文件进行加锁、解锁实例
Jan 23 PHP
php简单实现屏蔽指定ip段用户的访问
Apr 29 PHP
PHP的APC模块实现上传进度条
Oct 27 PHP
关于Curl在Swoole协程中的解决方案详析
Sep 12 PHP
laravel框架添加数据,显示数据,返回成功值的方法
Oct 11 PHP
关于laravel框架中的常用目录路径函数
Oct 23 PHP
基于PHP实现堆排序原理及实例详解
Jun 19 PHP
AJAX的跨域访问-两种有效的解决方法介绍
Jun 22 #PHP
浅析PHP substr,mb_substr以及mb_strcut的区别和用法
Jun 21 #PHP
PHP中mb_convert_encoding与iconv函数的深入解析
Jun 21 #PHP
解析php获取字符串的编码格式的方法(函数)
Jun 21 #PHP
浅析PHP页面局部刷新功能的实现小结
Jun 21 #PHP
解析php中var_dump,var_export,print_r三个函数的区别
Jun 21 #PHP
基于PHP文件操作的详细诠释
Jun 21 #PHP
You might like
php防盗链的常用方法小结
2010/07/02 PHP
PHP及Zend Engine的线程安全模型分析
2011/11/10 PHP
我的php学习笔记(毕业设计)
2012/02/21 PHP
生成随机字符串和验证码的类的PHP实例
2013/12/24 PHP
php中session退出登陆问题
2014/02/27 PHP
PHP函数import_request_variables()用法分析
2016/04/02 PHP
Mootools 1.2教程 Fx.Tween的使用
2009/09/15 Javascript
页面中js执行顺序
2009/11/09 Javascript
javascript中的prototype属性使用说明(函数功能扩展)
2010/08/16 Javascript
Pro JavaScript Techniques学习笔记
2010/12/28 Javascript
jquery使用append(content)方法注意事项分享
2014/01/06 Javascript
JQuery $.each遍历JavaScript数组对象实例
2014/09/01 Javascript
jQuery拖动元素并对元素进行重新排序
2015/12/30 Javascript
JavaScript原生节点操作小结
2017/01/17 Javascript
jQuery轻松实现无缝轮播效果
2017/03/22 jQuery
jQuery实现frame之间互通的方法
2017/06/26 jQuery
为输入框加入数字js校验代码分享
2017/11/02 Javascript
vue 使某个组件不被 keep-alive 缓存的方法
2018/09/21 Javascript
解决node.js含有%百分号时发送get请求时浏览器地址自动编码的问题
2019/11/20 Javascript
[01:03:59]2018DOTA2亚洲邀请赛3月30日 小组赛B组VGJ.T VS Secret
2018/03/31 DOTA
[00:12]2018DOTA2亚洲邀请赛 sylar表现SOLO技艺
2018/04/06 DOTA
使用C语言扩展Python程序的简单入门指引
2015/04/14 Python
用Python进行行为驱动开发的入门教程
2015/04/23 Python
用Python的Django框架来制作一个RSS阅读器
2015/07/22 Python
Django实现一对多表模型的跨表查询方法
2018/12/18 Python
浅谈python requests 的put, post 请求参数的问题
2019/01/02 Python
PyQt QListWidget修改列表项item的行高方法
2019/06/20 Python
python 实现12bit灰度图像映射到8bit显示的方法
2019/07/08 Python
Python Django 实现简单注册功能过程详解
2019/07/29 Python
BeautifulSoup中find和find_all的使用详解
2020/12/07 Python
党校自我鉴定范文
2013/10/02 职场文书
硅酸盐工业控制专业应届生求职信
2013/11/02 职场文书
乡镇平安建设汇报材料
2014/08/25 职场文书
社区综治工作汇报
2014/10/27 职场文书
仅用几行Python代码就能复制她的U盘文件?
2021/06/26 Python
python库sklearn常用操作
2021/08/23 Python