微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

thinkphp5的model方法如何使用

这篇文章主要介绍了thinkPHP5的model方法如何使用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇thinkPHP5的model方法如何使用文章都会有所收获,下面我们一起来看看吧。

thinkPHP5 model的使用方法:1、通过“User::all(function($query){...}”查询多条记录;2、使用“User::select(function($query){...}”查询;3、通过find()方法和get()方法查询;4、使用column()方法查询数据。

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);

关于“thinkPHP5的model方法如何使用”这篇文章内容就介绍到这里,感谢各位的阅读!相信大家对“thinkPHP5的model方法如何使用”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注编程之家行业资讯频道。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐