ThinkPHP框架:更新个别字段的值setField、setInc、setDec的用法

ThinkPHP有三个更新个别字段的值的函数,分别为setField、setInc、setDec。

setInc():将数字字段值增加
setDec():将数字字段值减少

setField,根据条件更新一个或多个字段的值。

db("test")->where('id=5')->setField('name','libras');

更新多个字段

$data = array('name'=>'libras','email'=>'libras@qq.com');
db("test")->where('id=5')->setField($data); 

 

对于数字字段的加减,可以直接使用 setInc() 与 setDec() 方法

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

setInc() 方法中最后一个参数为数字字段增加的值,如果省略则默认增加 1 。

setInc,设置某个字段的值自增,可以增加1,也可以增加指定数量。

设置score字段,自增1

db("test")->where('id=5')->setInc('score');

设置score字段,自增5

db("test")->where('id=5')->setInc('score',5);

 

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

setDec() 方法中最后一个参数为数字字段减少的值,如果省略则默认减少 1 。

setDec,设置某个字段的值自减,可以减少1,也可以减少指定数量。

设置score字段,自减1

db("test")->where('id=5')->setDec('score');

设置score字段,自减5

db("test")->where('id=5')->setDec('score',5);

 

最后,值得注意的是,setInc和setDec这两个函数,操作的字段应该都是数字类型的。

所有以上三个函数,如果操作成功,均返回受影响的行数,如果失败则返回false。

提示:

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

posted @ 2023-03-29 11:39  晨光浅夏  阅读(1696)  评论(0编辑  收藏  举报