助力软件开发企业降本增效 PHP / java源码系统,只需一次付费,代码终身使用! 广告
## 数据更新 返回受影响行数 ## 1. save($arr) save( ) 方法会首先检查自定义的自动验证规则 如果验证失败则可通过 $m->getError() 来获取错误信息 自动验证的使用请参照自动验证章节 $m = M('User'); $where = ['id'=>10]; //where 条件指定要修改的数据 $info = ['name'=>'张三','age'=>'18','sex'=>'男']; //准备数据(数组键名对应数据表的字段名) $m->where($where)->save($info); //修改数据(存在用户自定义模型并且定义了验证规则时执行自动验证) ## 1. update($arr) update( ) 直接更新数据,不验证规则 如果验证失败则可通过 $m->getError() 来获取错误信息 自动验证的使用请参照自动验证章节 $m = M('User'); $where = ['id'=>10]; //where 条件指定要修改的数据 $info = ['name'=>'张三','age'=>'18','sex'=>'男']; //准备数据(数组键名对应数据表的字段名) $m->where($where)->update($info); //修改数据(不执行自动验证) ## 需要使用字段值的情况: $m = D('User'); $where = ['id'=>10]; $info = ['age'=>'{age}+8']; //被{}包裹的age代表使用该字段自身的值 $m->where($where)->save($info); >[danger]## 安全过滤 >**参照数据添加** >save()或update()传入第二个参数 false 程序不进行安全过滤,默认是 true 执行安全过滤 ## 单独更新某一字段 setField($name,$value) $m = D('user'); $where = ['id'=>10]; $m->where($where)->setField('age',18); //将 age 字段值设为 18 ## 字段自增,自减,自乘以,自除以 $m = D('user'); $where = array('id'=>10); $m->where($where)->setInc('age'); //'age'字段的值+1 $m->where($where)->setInc('age',8); //'age'字段的值+8 $m->where($where)->setDec('age'); //'age'字段的值-1 $m->where($where)->setDec('age',8); //'age'字段的值-8 $m->where($where)->setMul('age'); //'age'字段的值乘2 $m->where($where)->setMul('age',8); //'age'字段的值乘8 $m->where($where)->setDiv('age'); //'age'字段的值除2 $m->where($where)->setDiv('age',8); //'age'字段的值除8