php入门到就业线上直播课:进入学习Apipost = Postman + Swagger + Mock + Jmeter 超好用的API调试工具:点击使用
本教程操作环境:Windows7系统、ThinkPHP5版、Dell G3电脑。
(资料图片)
thinkphp5 model方法怎么用?
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);
推荐学习:《thinkPHP视频教程》
以上就是thinkphp5 model方法怎么用的详细内容,更多请关注php中文网其它相关文章!