tp5(thinkPHP5框架)时间查询操作实例分析


Posted in PHP onMay 29, 2019

本文实例讲述了tp5(thinkPHP5框架)时间查询操作。分享给大家供大家参考,具体如下:

在项目中 可能会遇到 跨月份进行查询

比如在 当输入201809 会获取当月的开始时间$start_month 和 结束时间 $end_month

会查询2018年9月份的数据 但是当其中的一个数据是在201809到201810 ,数据库的字段是 start_time end_time

这时候

Db::name("表名")->where('start_time','<= time',$end_month)
->where('end_time','> time',$start_month)
->select();

时间比较

使用where方法

where方法支持时间比较,例如:

// 大于某个时间
where('create_time','> time','2016-1-1');
// 小于某个时间
where('create_time','<= time','2016-1-1');
// 时间区间查询
where('create_time','between time',['2015-1-1','2016-1-1']);

使用whereTime方法

whereTime方法提供了日期和时间字段的快捷查询,示例如下:

// 大于某个时间
Db::table('think_user')->whereTime('birthday', '>=', '1970-10-1')->select();
// 小于某个时间
Db::table('think_user')->whereTime('birthday', '<', '2000-10-1')->select();
// 时间区间查询
Db::table('think_user')->whereTime('birthday', 'between', ['1970-10-1', '2000-10-1'])->select();
// 不在某个时间区间
Db::table('think_user')->whereTime('birthday', 'not between', ['1970-10-1', '2000-10-1'])->select();

时间表达式

还提供了更方便的时间表达式查询,例如:

// 获取今天的博客
Db::table('think_blog') ->whereTime('create_time', 'today')->select();
// 获取昨天的博客
Db::table('think_blog')->whereTime('create_time', 'yesterday')->select();
// 获取本周的博客
Db::table('think_blog')->whereTime('create_time', 'week')->select();
// 获取上周的博客
Db::table('think_blog')->whereTime('create_time', 'last week')->select();
// 获取本月的博客
Db::table('think_blog')->whereTime('create_time', 'month')->select();
// 获取上月的博客
Db::table('think_blog')->whereTime('create_time', 'last month')->select();
// 获取今年的博客
Db::table('think_blog')->whereTime('create_time', 'year')->select();
// 获取去年的博客
Db::table('think_blog')->whereTime('create_time', 'last year')->select();

如果查询当天、本周、本月和今年的时间,还可以简化为:

// 获取今天的博客
Db::table('think_blog')->whereTime('create_time', 'd')->select();
// 获取本周的博客
Db::table('think_blog')->whereTime('create_time', 'w')->select();
// 获取本月的博客
Db::table('think_blog')->whereTime('create_time', 'm')->select();
// 获取今年的博客
Db::table('think_blog')->whereTime('create_time', 'y') ->select();
V5.0.5+版本开始,还可以使用下面的方式进行时间查询
// 查询两个小时内的博客
Db::table('think_blog')->whereTime('create_time','-2 hours')->select();

参考地址:https://www.kancloud.cn/he_he/thinkphp5

希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。

PHP 相关文章推荐
PHP 和 XML: 使用expat函数(三)
Oct 09 PHP
php采集文章中的图片获取替换到本地(实现代码)
Jul 08 PHP
Symfony2框架学习笔记之表单用法详解
Mar 18 PHP
php实现的网页版剪刀石头布游戏示例
Nov 25 PHP
php unicode编码和字符串互转的方法
Aug 12 PHP
PHP实现模拟http请求的方法分析
Dec 20 PHP
PHP使用ActiveMQ实现消息队列的方法详解
May 31 PHP
PHP实现单文件、多个单文件、多文件上传函数的封装示例
Sep 02 PHP
PHP设计模式之装饰器(装饰者)模式(Decorator)入门与应用详解
Dec 13 PHP
php7 图形用户界面GUI 开发示例
Feb 22 PHP
Laravel如何实现适合Api的异常处理响应格式
Jun 14 PHP
如何通过Apache在本地配置多个虚拟主机
Jul 29 PHP
php fread函数使用方法总结
May 28 #PHP
PHP常用正则表达式精选(推荐)
May 28 #PHP
tp5(thinkPHP5框架)captcha验证码配置及验证操作示例
May 28 #PHP
tp5(thinkPHP5框架)使用DB实现批量删除功能示例
May 28 #PHP
详解PHP PDO简单教程
May 28 #PHP
laravel实现简单用户权限的示例代码
May 28 #PHP
Yii2框架控制器、路由、Url生成操作示例
May 27 #PHP
You might like
解析php curl_setopt 函数的相关应用及介绍
2013/06/17 PHP
IIS+fastcgi下PHP运行超时问题的解决办法详解
2013/06/20 PHP
关于php支持分块与断点续传文件下载功能代码
2014/05/09 PHP
PHP return语句的另一个作用
2014/07/30 PHP
Discuz7.2版的faq.php SQL注入漏洞分析
2014/08/06 PHP
smarty模板引擎从配置文件中获取数据的方法
2015/01/22 PHP
PHP使用ActiveMQ实例
2018/02/05 PHP
Laravel5.5 数据库迁移:创建表与修改表示例
2019/10/23 PHP
javascript编程起步(第四课)
2007/02/27 Javascript
JQuery的一些小应用收集
2010/03/27 Javascript
JavaScript中各种编码解码函数的区别和注意事项
2010/08/19 Javascript
JavaScript中伪协议 javascript:使用探讨
2014/07/18 Javascript
让angularjs支持浏览器自动填表
2014/11/10 Javascript
仅9张思维导图帮你轻松学习Javascript 就这么简单
2016/06/01 Javascript
js css实现垂直方向自适应的三角提示菜单
2016/06/26 Javascript
JavaScript中数组的22种方法必学(推荐)
2016/07/20 Javascript
js模态对话框使用方法详解
2017/02/16 Javascript
jsonp跨域请求详解
2017/07/13 Javascript
websocket4.0+typescript 实现热更新的方法
2019/08/14 Javascript
layui使用templet格式化表格数据的方法
2019/09/16 Javascript
解决ant design vue中树形控件defaultExpandAll设置无效的问题
2020/10/26 Javascript
在vant中使用时间选择器和popup弹出层的操作
2020/11/04 Javascript
[58:00]DOTA2-DPC中国联赛 正赛 PSG.LGD vs Elephant BO3 第二场 2月7日
2021/03/11 DOTA
如何在Python中编写并发程序
2016/02/27 Python
Python竟能画这么漂亮的花,帅呆了(代码分享)
2017/11/15 Python
利用python将图片版PDF转文字版PDF
2019/05/03 Python
pandas将多个dataframe以多个sheet的形式保存到一个excel文件中
2019/10/10 Python
浅谈ROC曲线的最佳阈值如何选取
2020/02/28 Python
python的列表List求均值和中位数实例
2020/03/03 Python
高中生的学习总结自我鉴定
2013/10/26 职场文书
更夫岗位责任制
2014/02/11 职场文书
2014年部门工作总结
2014/11/12 职场文书
承诺书范本
2015/01/21 职场文书
送达通知书
2015/04/25 职场文书
2015初中教导处工作总结
2015/07/21 职场文书
《雀魂PONG☆》4月1日播出 PV角色设定情报
2022/03/20 日漫