thinkphp5 model方法怎么用

发布时间 - 2022-12-08 00:00:00    点击率:
thinkphp5 model的使用方法:1、通过“User::all(function($query){...}”查询多条记录;2、使用“User::select(function($query){...}”查询;3、通过find()方法和get()方法查询;4、使用column()方法查询数据。

本教程操作环境: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视频教程》


# thinkphp  # select  # function  # 对象  # column  # 这一  # 多个  # 可以使用  # 多条  # 遍历  # 报错  # 这三  # 里层  # brush  # class 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 网站页面设计需要考虑到这些问题  Laravel怎么判断请求类型_Laravel Request isMethod用法  Chrome浏览器标签页分组怎么用_谷歌浏览器整理标签页技巧【效率】  Laravel如何使用withoutEvents方法临时禁用模型事件  中山网站推广排名,中山信息港登录入口?  Laravel怎么实现前端Toast弹窗提示_Laravel Session闪存数据Flash传递给前端【方法】  Laravel如何使用Contracts(契约)进行编程_Laravel契约接口与依赖反转  Laravel怎么使用Collection集合方法_Laravel数组操作高级函数pluck与map【手册】  Laravel如何理解并使用服务容器(Service Container)_Laravel依赖注入与容器绑定说明  免费视频制作网站,更新又快又好的免费电影网站?  Laravel怎么使用Blade模板引擎_Laravel模板继承与Component组件复用【手册】  html5源代码发行怎么设置权限_访问权限控制方法与实践【指南】  制作旅游网站html,怎样注册旅游网站?  Laravel任务队列怎么用_Laravel Queues异步处理任务提升应用性能  javascript中数组(Array)对象和字符串(String)对象的常用方法总结  Swift中switch语句区间和元组模式匹配  动图在线制作网站有哪些,滑动动图图集怎么做?  如何基于云服务器快速搭建个人网站?  如何在 React 中条件性地遍历数组并渲染元素  ,交易猫的商品怎么发布到网站上去?  详解MySQL数据库的安装与密码配置  lovemo网页版地址 lovemo官网手机登录  怎么用AI帮你设计一套个性化的手机App图标?  Thinkphp 中 distinct 的用法解析  Laravel的Blade指令怎么自定义_创建你自己的Laravel Blade Directives  北京网站制作的公司有哪些,北京白云观官方网站?  Laravel怎么实现支付功能_Laravel集成支付宝微信支付  猎豹浏览器开发者工具怎么打开 猎豹浏览器F12调试工具使用【前端必备】  jQuery 常见小例汇总  Laravel如何集成Inertia.js与Vue/React?(安装配置)  专业商城网站制作公司有哪些,pi商城官网是哪个?  如何快速完成中国万网建站详细流程?  HTML5空格在Angular项目里怎么处理_Angular中空格的渲染问题【详解】  如何用搬瓦工VPS快速搭建个人网站?  大连企业网站制作公司,大连2025企业社保缴费网上缴费流程?  如何在阿里云虚拟服务器快速搭建网站?  Laravel模型事件有哪些_Laravel Model Event生命周期详解  Laravel如何实现多表关联模型定义_Laravel多对多关系及中间表数据存取【方法】  惠州网站建设制作推广,惠州市华视达文化传媒有限公司怎么样?  如何在宝塔面板中创建新站点?  为什么要用作用域操作符_php中访问类常量与静态属性的优势【解答】  如何快速查询网址的建站时间与历史轨迹?  香港服务器选型指南:免备案配置与高效建站方案解析  LinuxCD持续部署教程_自动发布与回滚机制  北京的网站制作公司有哪些,哪个视频网站最好?  桂林网站制作公司有哪些,桂林马拉松怎么报名?  Laravel如何使用Socialite实现第三方登录?(微信/GitHub示例)  浅谈javascript alert和confirm的美化  linux写shell需要注意的问题(必看)  Laravel如何使用Service Container和依赖注入?(代码示例)