1.查询
#使用get()来获取数据
$res=Player::get(1);//get方法传递参数值 $res=Player::get(function ($query){//get嵌套方法传递函数 $query->where("p_name","=","球员0") ->field("p_id,p_name"); });
#使用where()来获取数据$res=Player::where("p_id",2) ->field('p_id,p_name') ->find(); $res=Player::where("p_id","<",3) ->field("p_id,p_name") ->select(); foreach ($res as $val){ dump($val->toArray()); }
#使用all()来获取多项数据
$res=Player::all("1,2,3"); foreach ($res as $val){ dump($val->toArray()); } $res=Player::all([3,4,5]); foreach ($res as $val){ dump($val->toArray()); } $res=Player::all(function ($query){//传递闭包函数来组成条件 $query->where("p_id","<",3) ->field("p_id,p_name"); }); foreach ($res as $val){ dump($val->toArray()); }
#获取某个字段的值
$res=Player::where("p_id","=",2)->value('p_name');
#获取一列的数据
$res=Player::column("p_name","p_id");
2.新增
#使用create函数
#返回model对象,需转换为数组$res=Player::create([ 'p_name'=>'curry', 'p_password'=>'456654f' ],['p_name']);//[]默认只添加项 dump($res->p_id);
#使用save()函数,创建实例化对象,allowField=true,自动过滤掉不存在的字段,()里面填默认的只添加项
#返回影响行数$playerModel=new Player; $res=$playerModel->allowField(true)->save([ 'p_name' =>'iverson', 'p_password'=>'feilleia', 'demo'=>'demo' ]);
$this->model=model('模板名'); $res=$this->model->save($params)
#saveAll()添加多项数据
#返回model对象,需转换为数组$playerModel=new Player; $res=$playerModel->saveAll([ [ 'p_name' =>'RayAllen', 'p_password'=>'Boston34', ], [ 'p_name' =>'Garrnet', 'p_password'=>'Boston21', ] ]); foreach ($res as $val){ dump($val->toArray()); }
3.更新
#update()更新一些简单的数据时会用到(不能返回更新成功的信息)
$res=Player::update([ 'p_id' =>1, 'p_name'=>"kobe" ]);
#第二个参数支持一个数组,用来指定条件
$res=Player::update([ 'p_name'=>"kobe" ],['p_id'=>2]);
#第二个参数还可以支持一个函数,用来指定条件
$res=Player::update([ 'p_password'=>md5("654123da") ],function ($query){ $query->where("p_id","<=",5); });
#where方法,返回影响行数
$res=Player::where("p_name","EQ","kobe") ->update([ "p_name"=>"paul" ]);
#方法3
$playerModel=Player::get(1); $playerModel->p_name='curry'; //......添加多个属性 $res=$playerModel->save();
#创建实例化对象,通过对象调用save(),第二个参数指定条件
$playerModel=new Player; $res=$playerModel->save([ 'p_name'=>"zhangzgang", ],['p_id'=>5]);
#创建实例化对象,通过对象调用save(),第二个参数为函数
$playerModel=new Player; $res=$playerModel->save([ 'p_name'=>"guangdang" ],function ($query){ $query->where("p_id",">",5); });
#批量更新数据(不能返回更新成功的信息)
$playerModel=new Player; $res=$playerModel->saveAll([ ['p_id'=>1,'p_name'=>"1"], ['p_id'=>2,'p_name'=>"2"], ['p_id'=>3,'p_name'=>"3"] ]);
4.删除
#删除destroy(),返回影响记录的条数
$res=Player::destroy(1);
#传递数组绑定条件,返回影响记录的条数
$res=Player::destroy(['p_id'=>2]);
#传递函数,返回影响记录的条数
$res=Player::destroy(function ($query){ $query->where('p_id','>',5); });
#使用对象模型,返回影响记录的条数
$playerModel=Player::get(4); $res=$playerModel->delete();
#使用where()返回影响记录的条数,where()条件恒等的话,默认选择全部对象删除
$res=Player::where('p_id','EQ',3) ->delete();
TP5使用模型操作数据库
最新推荐文章于 2022-12-04 17:42:46 发布