Thinkphp5.0 的使用模型Model更新数据

Thinkphp5.0 的使用模型Model更新数据


(1)使用update()方法进行更新数据


 

一、where条件写在更新数据中

(这种情况更新的数据,必须含主键)

        $res = User::update([
            'id' => 2,
            'email' => '[email protected]'
        ]);
        //返回修改之后model的整个对象信息
        dump($res);

二、where条件使用update()的第二个参数,传递数组

        $res = User::update([
            'email' => '[email protected]'
        ],['id'=>2]);
        //返回修改之后model的整个对象信息
        dump($res);

三、where条件使用update()的第二个参数,传递闭包函数

       $res = User::update([
            'email' => '[email protected]'
        ],function($query){
            $query->where(['id'=>2]);
        });
        //返回修改之后model的整个对象信息
        dump($res);

四、使用where条件

        $res = User::where('id','=',2)->update([
            'email'=>'[email protected]'
        ]);
        //返回影响的行数
        dump($res);

(2)使用save()方法

方式一:

        $model = User::get(2);
        $model->email = '[email protected]';
        $res = $model->save();
        //返回影响的行数
        dump($res);

方式二:

        $model = new User();
        $res2 = $model->save([
            'email' => '[email protected]'
        ],['id'=>2]);
        //返回影响的行数
        dump($res2);

方式三:

        $model = new User();
        $res = $model->save([
            'email' => '[email protected]'
        ],function($query){
            $query->where(['id'=>2]);
        });
        //返回影响的行数
        dump($res);

使用saveAll()方法更新多个数据:

        $model = new User();
        $res = $model->saveAll([
            ['id' => 2,'email' => '[email protected]'],
            ['id' => 3,'email' => '[email protected]'],
            ['id' => 4,'email' => '[email protected]']
        ]);
        //返回数组
        dump($res);

 

转载于:https://www.cnblogs.com/gyfluck/p/9430654.html

你可能感兴趣的:(Thinkphp5.0 的使用模型Model更新数据)