ThinkPHP 模型方法 setInc() 和 setDec() 使用详解

对于数字字段的加减,可以直接使用 setInc() 与 setDec() 方法
ThinkPHP 内置了对统计数据(数字字段)的更新方法:

setInc():将数字字段值增加

setDec():将数字字段值减少

setInc()
ThinkPHP setInc() 方法将数字字段值增加。

例子:

<?php
public function update() {
header("Content-Type:text/html; charset=utf-8");
result = M("User")->where('uid = 2')->setInc('score', 3); if (result !== false) {
echo '数据更新成功!';
} else {
echo '没更新任何数据!';
}
}
上面例子执行的 SQL 语句为:

1
UPDATE user SET score=score+3 WHERE uid = 2
setInc() 方法中最后一个参数为数字字段增加的值,如果省略则默认增加 1 。

setDec()
setDec() 方法将数字字段值减少。

例子:

<?php
public function update() {
header("Content-Type:text/html; charset=utf-8");
result = M("User")->where('uid = 2')->setDec('score', 3); if (result !== false) {
echo '数据更新成功!';
} else {
echo '没更新任何数据!';
}
}
上面例子执行的 SQL 语句为:

1
UPDATE user SET score=score-3 WHERE uid = 2
setDec() 方法中最后一个参数为数字字段减少的值,如果省略则默认减少 1 。

提示
在 ThinkPHP 3.0 版本中,setInc() 与 setDec() 方法取消了条件参数,因此必须配合 where() 方法一起使用。setInc() 与 setDec() 方法也支持连贯操作,从而可以构造更加复杂的更新条件。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 本章主要来学习和使用查询构造器的用法,掌握查询构造器对于掌握数据库和模型的查询操作非常关键,学习内容主要包含: 创...
    寒冬夜行人_51a4阅读 1,477评论 0 2
  • 一. Java基础部分.................................................
    wy_sure阅读 3,854评论 0 11
  • 50个常用的sql语句Student(S#,Sname,Sage,Ssex) 学生表Course(C#,Cname...
    哈哈海阅读 1,261评论 0 7
  • 个人学习批处理的初衷来源于实际工作;在某个迭代版本有个BS(安卓手游模拟器)大需求,从而在测试过程中就重复涉及到...
    Luckykailiu阅读 4,809评论 0 11
  • 设计前期 ★产品定义(使用人群 主要功能 产品特色) ★用户需求(目标用户 使用场景) ★设计方向(风格...
    Amy_阅读 80评论 0 0