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 base64+gzinflate压缩编码和解码代码
Oct 03 PHP
使用php 获取时间今天明天昨天时间戳的详解
Jun 20 PHP
关于Sphinx创建全文检索的索引介绍
Jun 25 PHP
php实现统计邮件大小的方法
Aug 06 PHP
ThinkPHP调用common/common.php函数提示错误function undefined的解决方法
Aug 25 PHP
smarty自定义函数htmlcheckboxes用法实例
Jan 22 PHP
php+xml编程之xpath的应用实例
Jan 24 PHP
php调用KyotoTycoon简单实例
Apr 02 PHP
基于ThinkPHP实现批量删除
Dec 18 PHP
ThinkPHP框架实现导出excel数据的方法示例【基于PHPExcel】
May 12 PHP
Laravel框架实现简单的学生信息管理平台案例
May 07 PHP
解决laravel-admin 自己新建页面里 js 需要刷新一次的问题
Oct 03 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
德生9700DX电路分析
2021/03/02 无线电
利用 window_onload 实现select默认选择
2006/10/09 PHP
PHP判断图片格式的七种方法小结
2013/06/03 PHP
PHP以mysqli方式连接类完整代码实例
2014/07/15 PHP
利用PHP脚本在Linux下用md5函数加密字符串的方法
2015/06/29 PHP
Laravel5中防止XSS跨站攻击的方法
2016/10/10 PHP
PHP 布尔值的自增与自减的实现方法
2018/05/03 PHP
PHP使用函数用法详解
2018/09/30 PHP
PHP children()函数讲解
2019/02/03 PHP
jquery连缀语法如何实现
2012/11/29 Javascript
多种方法判断Javascript对象是否存在
2013/09/22 Javascript
js实现checkbox全选和反选示例
2014/05/01 Javascript
jQuery中end()方法用法实例
2015/01/08 Javascript
浅谈javascript中的闭包
2015/05/13 Javascript
Node.js的项目构建工具Grunt的安装与配置教程
2016/05/12 Javascript
Web开发中客户端的跳转与服务器端的跳转的区别
2017/03/05 Javascript
详解angularJs中关于ng-class的三种使用方式说明
2017/06/02 Javascript
原生JavaScrpit中异步请求Ajax实现方法
2017/11/03 Javascript
JavaScript实现计算多边形质心的方法示例
2018/01/31 Javascript
原生JS实现天气预报
2020/06/16 Javascript
[01:01:42]Secret vs Optic Supermajor 胜者组 BO3 第二场 6.4
2018/06/05 DOTA
[02:42]DOTA2城市挑战赛收官在即 四强之争风起云涌
2018/06/05 DOTA
[48:28]完美世界DOTA2联赛循环赛FTD vs Magma第二场 10月30日
2020/10/31 DOTA
python中from module import * 的一个坑
2014/07/20 Python
python中的多重继承实例讲解
2014/09/28 Python
用Python实现斐波那契(Fibonacci)函数
2016/03/25 Python
简单学习Python time模块
2016/04/29 Python
python 函数嵌套及多函数共同运行知识点讲解
2020/03/03 Python
Python Handler处理器和自定义Opener原理详解
2020/03/05 Python
Python3爬虫中Ajax的用法
2020/07/10 Python
python爬虫工具例举说明
2020/11/30 Python
python脚本使用阿里云slb对恶意攻击进行封堵的实现
2021/02/04 Python
母亲节演讲稿范文
2014/01/02 职场文书
中小学校园安全广播稿
2014/09/29 职场文书
redis 限制内存使用大小的实现
2021/05/08 Redis
Js类的构建与继承案例详解
2021/09/15 Javascript