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.0 的使用模型Model查询的更多相关文章

  1. Thinkphp5.0 的使用模型Model的获取器与修改器

    Thinkphp5.0 的使用模型Model的获取器.修改器.软删除 一.获取器 在model中使用 get+字段名+Attr,可以修改字段的返回值. 数据库中性别保存为,0未知.1男.2女,查询时返 ...

  2. Thinkphp5.0 的使用模型Model删除数据

    Thinkphp5.0 的使用模型Model删除数据 一.使用destory()删除数据 //删除id为3的记录 $res = User::destroy(3); //返回影响的行数 dump($re ...

  3. Thinkphp5.0 的使用模型Model更新数据

    Thinkphp5.0 的使用模型Model更新数据 (1)使用update()方法进行更新数据 一.where条件写在更新数据中 (这种情况更新的数据,必须含主键) $res = User::upd ...

  4. Thinkphp5.0 的使用模型Model添加数据

    Thinkphp5.0 的使用模型Model添加数据 使用create()方法添加数据 $res = TestUser::create([ 'name' => 'zhao liu', 'pass ...

  5. Thinkphp5.0 的Model模型

    Thinkphp5.0 的Model模型 新建user模型User.php: <?php namespace app\index\model; use think\Model; class Us ...

  6. ThinkPHP5.0框架开发--第8章 TP5.0 模型

    ThinkPHP5.0框架开发--第8章 TP5.0 模型 第8章 TP5.0 模型 ================================================= 今日学习 1. ...

  7. ThinkPHP5——模型(model)的使用

    在使用ThinkPHP5的过程中,我经常使用db进行数据库操作的,后来接触到了模型(model),刚使用时感觉跟db没啥区别,后来查官网知道模型基类中还提供了较多的其他的方法可以方便使用例如获取器.修 ...

  8. 对thinkphp5.0框架的实例学习

    不论是渗透测试还是代码审计的过程中会碰到用不同的框架搭建起来的网站,熟悉这些框架的基本原理,会帮助我们快速的理解漏洞原理,提高干活效率,所以自己本地搭了个php环境,来入门实例学习下thinkphp5 ...

  9. thinkphp5.0和thinkphp3.2的区别不同之处

    先看目录结构: thinkphp 5.0的目录结构, 文档:https://www.kancloud.cn/manual/thinkphp5/118008 project 应用部署目录 ├─appli ...

随机推荐

  1. 在reset css后两个input之间还是出现默认间隔的问题。

    <div class="search_box fl"> <input type="text" class="search_text& ...

  2. Retrofit2.0动态url遇到的坑

    1.今天在升级基于RxJava2+Retrofit+RxCache的网络请求封装这套框架的过程中遇到一个问题,当我使用Post动态传入url时,服务器一直返回http404 ,我的请求地址末端是这样的 ...

  3. 洛谷P2863 [USACO06JAN]牛的舞会The Cow Prom

    代码是粘的,庆幸我还能看懂. #include<iostream> #include<cstdio> #include<cmath> #include<alg ...

  4. 洛谷 P2801 教主的魔法

    题目描述 教主最近学会了一种神奇的魔法,能够使人长高.于是他准备演示给XMYZ信息组每个英雄看.于是N个英雄们又一次聚集在了一起,这次他们排成了一列,被编号为1.2.…….N. 每个人的身高一开始都是 ...

  5. 解压上传的zip文件流和文件

    /** * 解压上传的zip文件流 * @param stream * @param outputDirectory */ public static String unzip(InputStream ...

  6. PHP流程控制考察点

    php遍历数组的三种方法及各自的区别 php遍历数组的方式主要有三种: for循环 foreach循环 while.list().each()组合循环 其中: for循环只能遍历索引数组,foreac ...

  7. 并发2-Synchronized

    一.Synchronized的概念 是利用锁的机制来实现同步的. 锁机制有如下两种特性: 互斥性:即在同一时间只允许一个线程持有某个对象锁,通过这种特性来实现多线程中的协调机制,这样在同一时间只有一个 ...

  8. pycharm connect to github

    这位同学写得非常详细,推荐 http://www.cnblogs.com/feixuelove1009/p/5955332.html#undefined

  9. windows mac配置host方法

    配置host方法如下: 1.windows 系统配置host (1)打开电脑的系统盘(一般默认为C盘):C盘 -> Windows -> System32 -> drives -&g ...

  10. 全国绿色计算大赛 模拟赛第二阶段 (Python)

    第1关气温预测 def dailyTemps(temp_list): result = [] for ca in range(0, len(temp_list)-1): for i in range( ...