为了账号安全,请及时绑定邮箱和手机立即绑定
慕课网数字资源数据库体验端
快速入门ThinkPHP 5.0 --模型篇_学习笔记_慕课网
为了账号安全,请及时绑定邮箱和手机立即绑定

快速入门ThinkPHP 5.0 --模型篇

乌云龙 PHP开发工程师
难度中级
时长 3小时 0分
  • #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);


    查看全部
    0 采集 收起 来源:什么是模型

    2018-06-12

  • model的命名规范:一般model的名字和表名是对应的,例如 表名为imooc_user->模型名User.php 表名imooc_user_info->模型名UserInfo.php
    一般一个表对应一个model类,model类里面是对这个表的增删改查的各种操作

    查看全部
    1 采集 收起 来源:什么是模型

    2018-06-12

  • 虽说在控制器里也可以完成对数据库的各种操作,但是不利于其他控制器重用;
    把这些对数据库的重复操作封装到model,可以提高代码的重用性;多个控制器调用同一个model类即可

    查看全部
    0 采集 收起 来源:什么是模型

    2018-06-12

  • 常用链式操作   

    原理: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的单独查出来;


    查看全部
    0 采集 收起 来源:链式操作

    2018-06-10

  • 使用的时候,建议使用这种方式where('username','eq''wenco_1')

    如果是多个and关系可以使用数组或者多个where方法
    ->where('id','exp' ,'not in(1,2,3)')                
    ->whereOr('username','eq''wenco_1')来构造我们的where条件

    查看全部
    1 采集 收起 来源:条件构造器

    2018-06-10

  • EXP,类似于拼接的作用,在代码编译的时候把前后拼接起来

    查看全部
    1 采集 收起 来源:条件构造器

    2018-06-10

  • 多个where依然可以

    查看全部
    0 采集 收起 来源:条件构造器

    2018-06-10

  •  #where与whereOr 构成or的关系

    查看全部
    0 采集 收起 来源:条件构造器

    2018-06-10

  •  #连续使用where方法构成and where条件

    查看全部
    0 采集 收起 来源:条件构造器

    2018-06-10

  • 数组的方式可以给   值的数组的第一个参数设置条件结构 where(['id' => ['LT',5]])等同于where('id<5')
    也可以同时有两个查询条件,看截图

    查看全部
    1 采集 收起 来源:条件构造器

    2018-06-10

  • where(['id=>1'])等同于where('id',1)等同于where('id=1');

    查看全部
    0 采集 收起 来源:条件构造器

    2018-06-10

  • where("id","between","1,5"  或者 [1,10])包括1和5
    传递第三个参数20,是无效的,看截图;

    查看全部
    0 采集 收起 来源:条件构造器

    2018-06-10

  • 图片中的 备注;不区分大小写;

    查看全部
    0 采集 收起 来源:条件构造器

    2018-06-10

举报

0/150
提交
取消
课程须知
1、有一定的php基础。 2、对ThinkPHP5 有一定的了解。 3、没有接触过tp5 的学生可以先看下我之前录制的 <快速入门 ThinkPHP5 基础篇>
老师告诉你能学到什么?
1、ThinkPHP5 的数据库操作类 2、ThinkPHP5 的数据模型 3、使用数据模型快速对数据库进行增删改查的操作 4、ThinkPHP5 的自动完成操作 5、模型的自动时间戳和软删除
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!