php手记之05-tp5模型操作数据库

 # 实例化模型
        // $user = new User;
        // $user1 = new User();
        // $user2 = model('user');

// 添加一条数据
        # 方法1
        // $user1 = new User();
        // $user1->name = 'phpthink';
        // $user1->age = 89;
        // $user1->save();

        # 方法2
        // $user = new User;
        // $user->save([
        //     'name'  =>  'thinkph111p',
        //     'age' =>  '12'
        // ]);
        # 方法3
        // $user = User::create([
        //     'name'  =>  'thinkph222p',
        //     'age' =>  '19'
        // ]);
        // echo $user->name;

        // 过滤post数组中的非数据表字段数据
        // $user = new User;
        // $user->allowField(true)->save($request->param());
        // dump($request->param());

        # 添加多条记录
        // $user = new User;
        // $list = [
        //     ['name' => 'thinkphp12', 'email' => 'thinkphp@qq.com'],
        //     ['name' => 'onethink22', 'email' => 'onethink@qq.com']
        // ];
        // $user->saveAll($list);


// 更新数据
        # 方法1find
        // $user = User::get(10);
        // $user->name     = 'thinkphp';
        // $user->email    = 'thinkphp@qq.com';
        // $user->save();

        # 方法2
        // $user = new User;
        // save方法第二个参数为更新条件
        // $user->save([
        //     'name'  => 'thinkphp',
        //     'email' => 'thinkphp@qq.com'
        // ], ['id' => 1]);

        // $user = new User;
        // 过滤post数组中的非数据表字段数据
        // $user->allowField(true)->save($request->param(), ['id' => 1]);

        # 方法3
        // User::where('id', 1)->update(['name' => 'thinkphp']);

// 删除数据
        # 方法1
        // 在查询后调用delete方法。返回影响的记录数
        // $user = User::get(1);
        // $user->delete();

        # 方法2--直接调用静态方法(根据主键删除)
        // User::destroy(1);
        // 支持批量删除多个数据
        // User::destroy('1,2,3');
        // User::destroy([1, 2, 3]);

        // 条件删除
        // 使用闭包删除
        // User::destroy(function($query){
        //     $query->where('id','>',21);
        // });
        // 数据库类的查询条件删除
        // User::where('id','>',20)->delete();


        // 软删除
        // $user = new User();
        // $ret = User::where('status', 1)->select();

# 查询
    // 取出主键为1的数据
    $user = User::get(1);
    //查询单条记录 // $ret = User::where('name', 'liww')->find(); # 查询多条记录(条件) // $ret = User::where('status', 1)->limit(3)->order('id', 'asc')->select();
    // 根据主键获取多个数据
    $list = User::all('1,2,3');
    // 或者使用数组
    $list = User::all([1,2,3]);
    // 对数据集进行遍历操作
    foreach($list as $key=>$user){
        echo $user->name;
    }
  // 查询全部 
    $ret = User::select();
  # 获取某个字段或者某个列的值
    // 获取某个用户的名字
    // $ret =User::where('id', 10)->value('name');
    // 获取某个列的所有值
    // $ret = User::where('status', 1)->column('name');

  # 动态查询
    // 根据name字段查询用户信息
    // $name = User::getByName('thinkphp');
    // 根据email字段查询用户
    $user = User::getByEmail('thinkphp@qq.com');
 

 

上一篇:某企业CV笔试题


下一篇:tf1