【前言】
刚刚看到一个问题,编辑一个用户名和密码,现在不修改用户名只修改密码,因为用户名要进行唯一验证,此时这个用户名没有修改,unique就会提示用户名已经存在,这个问题大家是怎么解决的。
这里我也困惑过,试过几种方法,不过效率太低。代码量多,推荐一种方法,还是用save去更新数据
【主体】
(1)在官网上搜索了这个问题之后,发现官方已经解决了这个问题,原本的判断:
$result = $Model->where('id=1')->save($data); if($result) { echo 'success'; }else{ echo 'false'; }
(2)解决办法: 使用“===”判断返回值即可
$result = $Model->where('id=1')->save($data); if($result !== false) { echo 'success'; }else{ echo 'false'; }
(3)问题解决了,但是还是没有搞明白原因,于是又去看了一下save方法实现的源代码(3.2.3版本 mysql驱动):
Tp中模型的底层是由pdo类封装而来的,所以继续查找pdo中的rowCount方法:
原因找到了,因为数据没有变动,所以数据中影响的条数为零 ,返回值为 0,而 0 在php判断中又是false,所以就出现了上述的情况。当使用“===”判断时,由于判断了变量的类型,0 和 false就不相等了,问题解决。
.
相关推荐
以下小编给大家列出了三种实现thinkphp批量更新数据的方法,写的不好还请见谅,有意见欢迎提出,共同学习进步! 方法一: //批量修改 data二维数组 field关键字段 参考ci 批量修改函数 传参方式 function batch_...
ThinkPHP数据操作指南ThinkPHP数据操作指南ThinkPHP数据操作指南ThinkPHP数据操作指南ThinkPHP数据操作指南ThinkPHP数据操作指南
... ...后期免费升级。 ... 功能菜单介绍: ...一、数据分析: ...数据统计:统计汇总系统中用户记录的所有数据。...数据备份:备份数据、让数据永不丢失。 数据恢复:恢复数据、让数据快速还原。 七、家庭成员: 成员列表:增加管
适合TP初学者下载参考,我也是新手,拿上来分享下,老鸟请勿喷。
thinkPHP实现数据库数据导出Excel表格
ThinkPHP实现数据导出为Excel文件的PHPExcel类库文件
thinkphp3.2整合PHPExcel 数据导入导出完整示例(导入数据并插入数据库,充数据库导出数据到excel表格,包括数据库和源码)
Thinkphp3.2.3自定义添加数据表及表中字段。可在后台自主设置数据表名,添加拥有基础字段(id,createtime等)表,添加的表可自主在页面中添加、修改、删除字段。也可在页面中删除表
thinkphp5-使用SimHash进行海量内容数据查重
thinkphp5.1 备份系统数据库及还原数据库 支持多数据库链接
PHP,THINKPHP5.0,数据管理
ThinkPHP_错误调试和日志.chm
jquerymoblie+iscroll基于thinkphp下拉刷数据
本文实例讲述了thinkPHP5实现的查询数据库并返回json数据。分享给大家供大家参考,具体如下: TP5 实现查询数据库返回json数据(返回json数据函数实例) 返回结果: 复制代码 代码如下:{“code”:0,”msg”:”\u6570\...
破J网整站数据Thinkphp+layui版源码 安装说明: 1.上传网站文件到根目录解压缩 2.上传sql文件到数据库 3.修改\application\database.php 数据库链接信息 4.伪静态设置为thinkphp 5.后台登录地址为域名/admin.html 6....
本文实例讲述了thinkPHP5框架实现多数据库连接,跨数据连接查询操作。分享给大家供大家参考,具体如下: 1. 多数据库连接 方法1:在需要连接其他数据库的地方,使用Db::connect()方法动态连接数据库,方法参数为...
ThinkPHP3.1完全开发手册 版权申明 发布本资料须遵守开放出版许可协议 1.0 或者更新版本。 未经版权所有者明确授权,禁止发行本文档及其被实质上修改的版本。 未经版权所有者事先授权,禁止将此作品及其衍生作品以...
本文给大家介绍thinkphp实现更新数据的实例详解以及thinkphp更新数据库的五种方法,本文介绍的非常不错,具有参考借鉴价值,感兴趣的朋友可以参考下