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防注入漏洞过滤函数代码
Apr 11 PHP
php中使用接口实现工厂设计模式的代码
Jun 17 PHP
PHP中使用cURL实现Get和Post请求的方法
Mar 13 PHP
php实现天干地支计算器示例
Mar 14 PHP
php使用imagick模块实现图片缩放、裁剪、压缩示例
Apr 17 PHP
PHP中使用php5-ffmpeg撷取视频图片实例
Jan 07 PHP
浅谈php中urlencode与rawurlencode的区别
Sep 05 PHP
PHP 实现从数据库导出到.csv文件方法
Jul 06 PHP
thinkphp3.2实现在线留言提交验证码功能
Jul 19 PHP
Yii2.0实现生成二维码功能实例
Oct 24 PHP
PHP生成推广海报的方法分享
Apr 22 PHP
使用Git实现Laravel项目的自动化部署
Nov 24 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最常用的2种设计模式工厂模式和单例模式介绍
2012/08/14 PHP
ThinkPHP3.1查询语言详解
2014/06/19 PHP
清空上传控件input file的值
2010/07/03 Javascript
JS/Jquery判断对象为空的方法
2015/06/11 Javascript
JavaScript几种数组去掉重复值的方法推荐
2016/04/12 Javascript
JavaScript获取键盘按键的键码(参照表)
2017/01/10 Javascript
webpack入门必知必会
2017/01/16 Javascript
基于javascript实现数字英文验证码
2017/01/25 Javascript
js的OOP继承实现(必看篇)
2017/02/18 Javascript
PHP7新特性简述
2017/06/11 Javascript
seajs中最常用的7个功能、配置示例
2017/10/10 Javascript
JS实现百度网盘任意文件强制下载功能
2018/08/31 Javascript
教你如何编写Vue.js的单元测试的方法
2018/10/17 Javascript
简单两步使用node发送qq邮件的方法
2019/03/01 Javascript
layUI实现前端分页和后端分页
2019/07/27 Javascript
[02:27]2014DOTA2国际邀请赛 VG赛后采访:更大的挑战在等着我们
2014/07/13 DOTA
Python logging模块学习笔记
2014/05/24 Python
Python中字典(dict)和列表(list)的排序方法实例
2014/06/16 Python
Python实现将DOC文档转换为PDF的方法
2015/07/25 Python
Python批量创建迅雷任务及创建多个文件
2016/02/13 Python
python实现多线程的两种方式
2016/05/22 Python
Python实现求数列和的方法示例
2018/01/12 Python
对pandas中Series的map函数详解
2018/07/25 Python
浅谈pytorch和Numpy的区别以及相互转换方法
2018/07/26 Python
python 格式化输出百分号的方法
2019/01/20 Python
什么是Python中的顺序表
2020/06/02 Python
使用sklearn对多分类的每个类别进行指标评价操作
2020/06/11 Python
10款最佳Python开发工具推荐,每一款都是神器
2020/10/15 Python
纽约21世纪百货官网:Century 21
2016/08/27 全球购物
英国领先的运动营养品牌:Protein Dynamix
2018/01/02 全球购物
英国户外服装品牌:Craghoppers
2019/04/25 全球购物
护理不良事件检讨书
2014/02/06 职场文书
社区巾帼文明岗事迹材料
2014/06/03 职场文书
在宿舍喝酒的检讨书
2014/09/28 职场文书
小学科学教学计划
2015/01/21 职场文书
java如何实现获取客户端ip地址的示例代码
2022/04/07 Java/Android