thinkphp save(update) 使用列名=列名+1 a=a+1
扫描二维码
随时随地手机看文章
普通的写法
$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)),