zoukankan      html  css  js  c++  java
  • Thinkphp5.0 的使用模型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 appindexcontrollerUser::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:thinkdbQuery->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);    

     

  • 相关阅读:
    怎么自定义修改CnBlogs博客园主题模板css样式
    前端怎么避免无效的请求,减轻服务器负载
    360浏览器奇葩问题:非得打开一次控制台才能登录(try catch finally 用法)
    react中<br/>不换行、多个&nbsp;只显示一个空格的问题 dangerouslySetInnerHTML
    webpack压缩文件错误:ERROR in bundle.js from UglifyJs
    webpack css单独打包 及extract-text-webpack-plugin插件
    css如何引入第三方字体
    计数排序
    接口
    抽象方法和抽象类
  • 原文地址:https://www.cnblogs.com/gyfluck/p/9429439.html
Copyright © 2011-2022 走看看