Thinkphp5.0 的使用模型Model查询

mac2022-06-30  18

Thinkphp5.0 的使用模型Model查询


 

一、查询多条记录

获取多个数据可以使用:select()方法和all()方法。

示例一:使用all()方法。

//(1)筛选条件使用闭包函数 $res = User::all(function($query){ $query->where('id','>',0)->field('id,name,email'); }); foreach($res as $val){ dump($val->toArray()); } //(2)筛选条件使用where()方法 $res = User::where('id','>',0)->field('id,name,email')->all(); //致命错误: Call to undefined method app\index\controller\User::all()

示例二:使用select()方法。

//(1)筛选条件使用where() $res = User::where('id','>',0)->field('id,name,email')->select(); foreach($res as $val){ dump($val->toArray()); } //(2)筛选条件使用闭包函数 $res = User::select(function($query){ $query->where('id','>',0)->field('id,name,email'); }); foreach($res as $val){ dump($val->toArray()); }

1、注意结果格式:外层是数组,里层包含多个查询出来的对象不能直接使用toArray(),需要遍历

2、使用all()方法时,不能使用where等方法。


 

二、查询一条记录

获取多个数据可以使用:find()方法和get()方法。

示例一:使用find()方法。

//(1)筛选条件使用闭包函数 $res = User::find(function($query){ $query->where('name','=','zhang san'); }); dump($res->toArray()); //(2)筛选条件使用where $res = User::where('name','=','zhang san')->find(); dump($res->toArray());

示例二:使用get()方法。

//(1)筛选条件使用闭包函数 $res = User::get(function($query){ $query->where('name','=','zhang san'); }); dump($res->toArray()); //(2)错误方式:筛选条件使用where()方法, $res = User::where('name','=','zhang san')->get(); dump($res->toArray()); //报错:method not exist:think\db\Query->get //get()方式只能使用闭包形式。

 三、查询一个字段

使用value()方法

$email = User::where('name','=','zhang san')->value('email'); dump($email);

四、查询列数据

使用column()方法:

//获取name字段这一列 $res = User::where('id','>',0)->column('name'); dump($res); //获取name字段这一列,并且以id字段作为索引 $res = User::where('id','>',0)->column('id,name'); dump($res); //获取name字段这一列,并且以id字段作为索引 $res = User::where('id','>',0)->column('name','id'); dump($res); //获取id,name,email字段这三列,并且以id字段作为索引 $res = User::where('id','>',0)->column('name,email','id'); dump($res);

 

 

 

 

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

相关资源:JAVA上百实例源码以及开源项目
最新回复(0)