ThinkPHP 内置了对统计数据(数字字段)的更新方法:
setInc():将数字字段值增加
setDec():将数字字段值减少
ThinkPHP setInc() 方法将数字字段值增加。
例子:
public function update(){
header("Content-Type:text/html; charset=utf-8");
$Dao = M("User");
$result = $Dao->setInc('score','uid=2',3);
if($result !== false){
echo '数据更新成功!';
}else{
echo '没更新任何数据!';
}
}
上面例子执行的 SQL 语句为:
UPDATE user SET score=score+3 WHERE uid = 2
setInc() 方法中最后一个参数为数字字段增加的值,如果省略则默认增加 1 。
ThinkPHP setDec() 方法将数字字段值减少。
例子:
public function update(){
header("Content-Type:text/html; charset=utf-8");
$Dao = M("User");
$result = $Dao->setDec('score','uid=2',3);
if($result !== false){
echo '数据更新成功!';
}else{
echo '没更新任何数据!';
}
}
上面例子执行的 SQL 语句为:
UPDATE user SET score=score-3 WHERE uid = 2
setDec() 方法中最后一个参数为数字字段减少的值,如果省略则默认减少 1 。
setInc() 与 setDec() 方法均支持连贯操作,从而可以构造更加复杂的更新条件。