PHP获取一些常用时间区间(本周、本月、本季度、今年,上周、上月、上季度、去年)

news/2024/9/21 15:51:05
/*** @notes: 获取快捷时间* @return array* @author: lavender* @time: 2024/7/23 15:36*/public function getShortcutsTimeArea(){$arr      = [];$timezone = new \DateTimeZone('PRC');$datetime = new \DateTime();$datetime->setTimezone($timezone);$month  = get_now_date('n');$season = (int)($month / 3);if ($month % 3 > 0) {$season += 1;}// 本周$datetime->modify('Monday this week');$start_time1 = $datetime->format('Y-m-d');$datetime->modify('Sunday this week');$end_time1        = $datetime->format('Y-m-d');$arr['this_week'] = $start_time1 . ' ~ ' . $end_time1;// 本月$datetime->modify('first day of this month');$start_time2 = $datetime->format('Y-m-d');$datetime->modify('last day of this month');$end_time2         = $datetime->format('Y-m-d');$arr['this_month'] = $start_time2 . ' ~ ' . $end_time2;// 本季度if ($season === 1) {$arr['this_quarter'] = get_now_date('Y-01-01') . ' ~ ' . get_now_date('Y-03-31');} else if ($season === 2) {$arr['this_quarter'] = get_now_date('Y-04-01') . ' ~ ' . get_now_date('Y-06-30');} else if ($season === 3) {$arr['this_quarter'] = get_now_date('Y-07-01') . ' ~ ' . get_now_date('Y-09-30');} else {$arr['this_quarter'] = get_now_date('Y-10-01') . ' ~ ' . get_now_date('Y-12-31');}// 今年$datetime->modify('first day of january this year');$start_time4 = $datetime->format('Y-m-d');$datetime->modify('last day of december this year');$end_time4        = $datetime->format('Y-m-d');$arr['this_year'] = $start_time4 . ' ~ ' . $end_time4;// 上周$timezone = new \DateTimeZone('PRC');$datetime = new \DateTime();$datetime->setTimezone($timezone);$datetime->modify('Monday last week');$start_time5 = $datetime->format('Y-m-d');$datetime->modify('Sunday this week');$end_time5        = $datetime->format('Y-m-d');$arr['last_week'] = $start_time5 . ' ~ ' . $end_time5;// 上月$timezone = new \DateTimeZone('PRC');$datetime = new \DateTime();$datetime->setTimezone($timezone);$datetime->modify('first day of last month');$start_time6 = $datetime->format('Y-m-d');$datetime->modify('last day of this month');$end_time6         = $datetime->format('Y-m-d');$arr['last_month'] = $start_time6 . ' ~ ' . $end_time6;// 上季度if ($season === 1) {$year                = intval(get_now_date('Y')) - 1;$arr['last_quarter'] = $year . '-10-01' . ' ~ ' . $year . '-12-31';} else if ($season === 2) {$arr['last_quarter'] = get_now_date('Y-01-01') . ' ~ ' . get_now_date('Y-03-31');} else if ($season === 3) {$arr['last_quarter'] = get_now_date('Y-04-01') . ' ~ ' . get_now_date('Y-06-30');} else {$arr['last_quarter'] = get_now_date('Y-07-01') . ' ~ ' . get_now_date('Y-09-30');}// 去年$timezone = new \DateTimeZone('PRC');$datetime = new \DateTime();$datetime->setTimezone($timezone);$datetime->modify('first day of january last year');$start_time8 = $datetime->format('Y-m-d');$datetime->modify('last day of december this year');$end_time8        = $datetime->format('Y-m-d');$arr['last_year'] = $start_time8 . ' ~ ' . $end_time8;return $arr;}

  

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.ryyt.cn/news/62966.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

相关文章

nginx: 按ip地址限流

一,以固定的速度提供服务 语法: 例子 limit_req_zone $binary_remote_addr zone=test:10m rate=2r/s;server { location / { limit_req zone=test; }} 语法: imit_req_zone 用于设置限流和共享内存区域的参数,格式为: limit_req_zone key zone rate。 key: 定…

Free5GC源码研究(2) - 单个NF的软件架构

前文我们总览了free5gc的总体软件架构。整一个free5gc系统又由几个NF(Network Function)组成,所以本文继续深入研究单个NF的软件架构。要研究NF的软件架构,最直接的方式是找一个简单的NF来回观摩。free5gc/ausf算是比较简单的一个,然而我发现了一个更简单的NF,叫做andy89…

一,初始 MyBatis-Plus

一,初始 MyBatis-Plus @目录一,初始 MyBatis-Plus1. MyBatis-Plus 的概述2. 入门配置第一个 MyBatis-Plus 案例3. 补充说明:3.1 通用 Mapper 接口介绍3.1.1 Mapper 接口的 “增删改查”3.1.1.1 查询所有记录3.1.1.2 插入一条数据3.1.1.3 删除一条数据3.1.1.4 更新一条数据3.…

[神经网络与深度学习笔记]LDA降维

LDA降维 LinearDiscriminant Analysis 线性判别分析,是一种有监督的线性降维算法。与PCA保持数据信息不同,LDA的目标是将原始数据投影到低维空间,尽量使同一类的数据聚集,不同类的数据尽可能分散 步骤:计算类内散度矩阵\(S_b\) 计算类间散度矩阵\(S_w\) 计算矩阵\(S_w^{-1…

C++ 指针和迭代器支持的操作

▲ 《C++ Primer》 P96 指针也都支持上面的操作。

代码整洁之道--读书笔记(14)

代码整洁之道简介: 本书是编程大师“Bob 大叔”40余年编程生涯的心得体会的总结,讲解要成为真正专业的程序员需要具备什么样的态度,需要遵循什么样的原则,需要采取什么样的行动。作者以自己以及身边的同事走过的弯路、犯过的错误为例,意在为后来者引路,助其职业生涯迈上更…

hexo安装后报错hexo 不是内部或外部命令,也不是可运行的程序 或批处理文件。

hexo问题 之前利用hexo和gitee搭建了一个博客,但是最近gitee的gitpage停止服务了,便想着在github上搭建一个。 在到安装hexo这一步的时候,一直报错hexo 不是内部或外部命令,也不是可运行的程序 或批处理文件。 我的所有安装步骤和环境变量发现都没有错,反复配置后去找了一…

跑冒滴漏监测系统

跑冒滴漏监测系统应用计算机视觉和深度学习技术对危化品生产区域实时检测,当检测到液体泄露时,立即抓拍存档告警并回传给后台监控平台方便人员及时处理,提高图像数据的实时监控效率。跑冒滴漏监测系统7*24小时不间断对监控画面实时分析监测,避免意外事故发生,同时降低人力…