ThinkPHP有三个更新个别字段的值的函数,分别为setField、setInc、setDec。
setInc():将数字字段值增加 setDec():将数字字段值减少
setField,根据条件更新一个或多个字段的值。
db("test")->where('id=5')->setField('name','libras');
更新多个字段
$data = array('name'=>'libras','email'=>'[email protected]');
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()方法也支持连贯操作,从而可以构造更加复杂的更新条件。
标签:where,字段,score,ThinkPHP,setInc,setField,setDec From: https://www.cnblogs.com/libras/p/17268304.html