您的位置:首页 > 编程语言 > PHP开发

thinkphp save(update) 使用列名=列名+1 a=a+1

2014-03-18 09:57 239 查看
普通的写法

$model-where('条件')->save(array('status'=>0));

可是无法实现 使用列名,因为
array('status'=>'status+1');


Thinkphp 会吧status+1 当成字符串处理

看下源码吧,记得有一个setInc 的方法可以实现

/**
* 字段值增长
* @access public
* @param string $field 字段名
* @param integer $step 增长值
* @return boolean
*/
public function setInc($field,$step=1) {
return $this->setField($field,array('exp',$field.'+'.$step));
}


仿照他的写法就可以了

array('balance'=>($balance-$needMoney),
'consume_money'=>array('exp','consume_money+'.$needMoney)),
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  thinkphp
相关文章推荐