我爱学习网首页 | 设为首页 | 收藏本站 | 网站地图 您好,欢迎光临我爱学习网
我爱学习网

当前位置:首页 > 编程开发 > php > ThinkPHP框架 >

ThinkPHP setField 方法更新一个或多个字段的值

时间:2016-09-16 17:59 来源:未知 | 作者:我爱学习网 | 本文已影响

1、setField() 方法的语法
setField(fields, value, condition='')
因此 setField() 不可以像 save() 方法一样,以构造数据数组的方式传入 setField(),而需要将需要更新的字段与值分别传入 setField() 方法中。

2、使用setField() 更新一个字段的值
ThinkPHP setField() 方法用于更新字段的值。
例:
public function update(){
    $DB = M("User");

    $result = $DB->where('uid = 2')->setField('email','Huixiang@qq.com');

    if($result !== false){
        $this->success('更新成功');
    }else{
        $this->error('更新失败');
    }
}
上面例子执行的 SQL 语句为:

UPDATE user SET email='Huixiang@qq.com' WHERE uid = 2

3、使用setField()更新多个字段的值
setField() 方法支持同时更新多个字段,只需要传入数组参数即可:

public function update(){
    $DB = M("User");

    $result = $DB->where('uid = 2')->setField(array('username','email'),array('Huixiang','Huixiang@qq.com'));

    if($result !== false){
        $this->success('更新成功');
    }else{
        $this->error('更新失败');
    }
}

(责任编辑:我爱学习网)

分享到: 更多