
离线 TA的专栏
- 打卡等级:即来则安
- 打卡总天数:21
- 打卡月天数:0
- 打卡总奖励:320
- 最近打卡:2025-03-28 03:04:30
|
本文实例讲述了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相关内容感兴趣的读者可查看本站专题:《ThinkPHP入门教程》、《thinkPHP模板操作技巧总结》、《ThinkPHP常用方法总结》、《codeigniter入门教程》、《CI(CodeIgniter)框架进阶教程》、《Zend FrameWork框架入门教程》及《PHP模板技术总结》。
希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作! |
晓枫资讯-科技资讯社区-免责声明
免责声明:以上内容为本网站转自其它媒体,相关信息仅为传递更多信息之目的,不代表本网观点,亦不代表本网站赞同其观点或证实其内容的真实性。
1、注册用户在本社区发表、转载的任何作品仅代表其个人观点,不代表本社区认同其观点。
2、管理员及版主有权在不事先通知或不经作者准许的情况下删除其在本社区所发表的文章。
3、本社区的文章部分内容可能来源于网络,仅供大家学习与参考,如有侵权,举报反馈:  进行删除处理。
4、本社区一切资源不代表本站立场,并不代表本站赞同其观点和对其真实性负责。
5、以上声明内容的最终解释权归《晓枫资讯-科技资讯社区》所有。
|