-
#user::all()
// $res = User::all(function($query){
// $query->where("id","<","5")
// ->field("id","username");
// });
#column()第二个参数为新生成的数组的下标
$res = User::column("email","username");
// foreach($res as $val){
// dump($val->toArray());
// }
//$res = $res->toArray();//将结果转换成数组
dump($res);
查看全部 -
使用模型查询数据;#通过get方式获取数据,括号内可以为主键,也可以为闭包函数
// $res = User::get(function($query){
// $query->where("username","eq","wenco_3")
// ->field("email");
// });
// $res = User::where("id","<=",15)
// ->field("id,username")
// ->limit(19)
// ->order("id" ,"DESC")
// ->select();
查看全部 -
Model的使用方法
use app\模块\model\模型类名
1、$res = 模型类名::get(1);
2、$user = new 模型类名;
$res = $user::get(1);
3、使用Loader
use think\Loader;
$user = Loader::model('模型类名');
$res = $user::get(1);
4、助手函数
$user = model('模型类名');
$res = $user::get(1);
查看全部 -
model的命名规范:一般model的名字和表名是对应的,例如 表名为imooc_user->模型名User.php 表名imooc_user_info->模型名UserInfo.php
一般一个表对应一个model类,model类里面是对这个表的增删改查的各种操作查看全部 -
虽说在控制器里也可以完成对数据库的各种操作,但是不利于其他控制器重用;
把这些对数据库的重复操作封装到model,可以提高代码的重用性;多个控制器调用同一个model类即可查看全部 -
常用链式操作
原理:Db类的链式方法返回Db对象,可以继续使用Db对象的这些方法对查询数据进行一些条件构造以及范围的选择和排序等等;
$res=$db
->where('id','>',5) 条件ID>5
->field('username','id') 只搜索username和id两个字段
->order('id DESC') order排序 id DESC id倒序
->limit(3,7) limit截取 3,7 从3开始截取7个
->page(3,5) page(m,n)多用于分页//limit分页limit((m-1)*n,n)== m:当前页数,n:每页多少条数据
->group('`group`') //group是关键字,这里用``进行转义
->select(); select( ); 搜索
var_dump($res);
注意:order对group是不起作用的;就是在执行的group进行分组的时候,并不是在你order排序的基础上进行的;
group('字段'),他会根据字段的值为分类标准进行分类,比如字段值为1的单独查出来,字段值为1的单独查出来;
查看全部 -
使用的时候,建议使用这种方式
where('username','eq','wenco_1')如果是多个and关系可以使用数组或者多个where方法->where('id','exp','not in(1,2,3)')->whereOr('username','eq','wenco_1')来构造我们的where条件查看全部 -
EXP,类似于拼接的作用,在代码编译的时候把前后拼接起来
查看全部 -
多个where依然可以
查看全部 -
#where与whereOr 构成or的关系查看全部 -
#连续使用where方法构成andwhere条件查看全部 -
数组的方式可以给 值的数组的第一个参数设置条件结构 where(['id' => ['LT',5]])等同于where('id<5')
也可以同时有两个查询条件,看截图查看全部 -
where(['id=>1'])等同于where('id',1)等同于where('id=1');
查看全部 -
where("id","between","1,5" 或者 [1,10])包括1和5
传递第三个参数20,是无效的,看截图;查看全部 -
图片中的 备注;不区分大小写;
查看全部
举报