PHP 获取今日 本周 当月 本季度 本年的起止时间

2023-12-02 18:12

本文主要是介绍PHP 获取今日 本周 当月 本季度 本年的起止时间,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

/*** 处理起止时间* @param $type //快速筛选 1-今日 2-本周 3-当月 4-本季度 5-本年* @param $startDate //开始日期* @param $endDate //结束日期* @return array|string[]*/
function handleStartStopDate($type, $startDate, $endDate)
{//默认初始化为今日起止时间$suffix_start = ' 00:00:00';$suffix_end = ' 23:59:59';$dateArray = ['startDate' => date('Y-m-d') . $suffix_start,'endDate' => date('Y-m-d') . $suffix_end];//如果快速获取时间 和 开始时间截止时间都存在拿取当前传入的时间//或//快速获取时间不存在并且开始时间截止时间都存在拿取当前传入的时间if (($type && $startDate && $endDate) || (!$type && $startDate && $endDate)) {$dateArray['startDate'] = $startDate . $suffix_start;$dateArray['endDate'] = $endDate . $suffix_end;} elseif ($type && !$startDate && !$endDate) {switch ($type) {case 2://本周$dateArray = getWeekTime();break;case 3://当月$dateArray =  getMonthTime();break;case 4://本季度$dateArray =  getQuarterTime();break;case 5://本年$dateArray =  getYearTime();break;}}return $dateArray;
}/*** 获取本周时间* @return string[]*/
function getWeekTime()
{// 获取当前日期$currentDate = date('Y-m-d');// 获取本周起始日期$weekStart = date('Y-m-d', strtotime('this week', strtotime($currentDate)));// 获取本周结束日期$weekEnd = date('Y-m-d', strtotime('this week +6 days', strtotime($currentDate)));$start_time = $weekStart . ' 00:00:00';$end_time = $weekEnd . ' 23:59:59';return $dateArray = ['startDate' => $start_time,'endDate' => $end_time];
}//获取本月起止时间
function getMonthTime()
{// 获取当前日期$currentDate = date('Y-m-d');// 获取本月起始日期$monthStart = date('Y-m-01', strtotime($currentDate));// 获取本月结束日期$monthEnd = date('Y-m-t', strtotime($currentDate));$start_time = $monthStart . ' 00:00:00';$end_time = $monthEnd . ' 23:59:59';return $dateArray = ['startDate' => $start_time,'endDate' => $end_time];
}/*** 获取本季度起止时间* @return array*/
function getQuarterTime()
{$season = ceil((date('n'))/3);//当月是第几季度$start = date('Y-m-d H:i:s', mktime(0, 0, 0,$season*3-3+1,1,date('Y')));$end = date('Y-m-d H:i:s', mktime(23,59,59,$season*3,date('t',mktime(0, 0 , 0,$season*3,1,date("Y"))),date('Y')));return $dateArray = ['startDate' => $start,'endDate' => $end];
}/*** 获取本年起止时间* @return array*/
function getYearTime()
{$suffix_start = ' 00:00:00';$suffix_end = ' 23:59:59';$currentYear = date('Y');// 获取本年度起始时间$dateArray['startDate'] = date('Y-01-01', strtotime($currentYear)) . $suffix_start;// 获取本年度结束时间$dateArray['endDate'] = date('Y-12-31', strtotime($currentYear)) . $suffix_end;return $dateArray;
}

这篇关于PHP 获取今日 本周 当月 本季度 本年的起止时间的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/446309

相关文章

问题:第一次世界大战的起止时间是 #其他#学习方法#微信

问题:第一次世界大战的起止时间是 A.1913 ~1918 年 B.1913 ~1918 年 C.1914 ~1918 年 D.1914 ~1919 年 参考答案如图所示

时序预测 | MATLAB实现LSTM时间序列未来多步预测-递归预测

时序预测 | MATLAB实现LSTM时间序列未来多步预测-递归预测 目录 时序预测 | MATLAB实现LSTM时间序列未来多步预测-递归预测基本介绍程序设计参考资料 基本介绍 MATLAB实现LSTM时间序列未来多步预测-递归预测。LSTM是一种含有LSTM区块(blocks)或其他的一种类神经网络,文献或其他资料中LSTM区块可能被描述成智能网络单元,因为

java中查看函数运行时间和cpu运行时间

android开发调查性能问题中有一个现象,函数的运行时间远低于cpu执行时间,因为函数运行期间线程可能包含等待操作。native层可以查看实际的cpu执行时间和函数执行时间。在java中如何实现? 借助AI得到了答案 import java.lang.management.ManagementFactory;import java.lang.management.Threa

时间服务器中,适用于国内的 NTP 服务器地址,可用于时间同步或 Android 加速 GPS 定位

NTP 是什么?   NTP 是网络时间协议(Network Time Protocol),它用来同步网络设备【如计算机、手机】的时间的协议。 NTP 实现什么目的?   目的很简单,就是为了提供准确时间。因为我们的手表、设备等,经常会时间跑着跑着就有误差,或快或慢的少几秒,时间长了甚至误差过分钟。 NTP 服务器列表 最常见、熟知的就是 www.pool.ntp.org/zo

20170723 做的事 ecdsa的签名验证时间短于bls signature

1 今天在虚拟机 /home/smile/Desktop/20170610/Test//time_ecdsa 文件夹下,找到ecdsa的验证时间是 989.060606μs μs 先 make ,然后run。 再取BLS的签名生成时间: ./run  2  gnuplot 画图,画对比的时间 gnuplot 画图参考教程 http://blog.sciencen

【青龙面板辅助】JD商品自动给好评获取京豆脚本

1.打开链接 开下面的链接进入待评价商品页面 https://club.jd.com/myJdcomments/myJdcomments.action?sort=0 2.登陆后执行脚本 登陆后,按F12键,选择console,复制粘贴以下代码,先运行脚本1,再运行脚本2 脚本1代码 可以自行修改评价内容。 var content = '材质很好,质量也不错,到货也很快物流满分,包装快递满

Python几种建表方法运行时间的比较

建立一个表[0,1,2,3.......10n],下面几种方法都能实现,但是运行时间却截然不同哦 import time#方法一def test1(n):list=[]for i in range(n*10):list=list+[i]return list#方法二def test2(n):list=[]for i in range(n*10):list.append(i)#方法三d

PHP的基本语法有哪些?

PHP的基本语法包括以下几个方面: PHP标记:PHP脚本以<?php开始,以?>结束。这是PHP文件的默认文件扩展名是.php。 变量和常量:变量以$符号开头,其后是变量的名称。常量使用define()函数定义,例如define("常量名", 常量值);。 数据类型:PHP支持多种数据类型,如整型、浮点型、字符串型等。 注释:PHP支持单行注释(用//表示)和多行注释(用/* */表示

Spring 内部类获取不到@Value配置值问题排查(附Spring代理方式)

目录 一、实例问题 1、现象 2、原因 3、解决 二、Spring的代理模式 1、静态代理(Static Proxy) 1)原理 2)优缺点 3)代码实现 2、JDK动态代理(JDK Dynamic Proxy) 1)原理 2)优缺点 3)代码实现 3、cglib 代理(Code Generation Library Proxy) 1)原理 2)优缺点 3)代码实

【Qt6.3 基础教程 16】 掌握Qt中的时间和日期:QTimer和QDateTime的高效应用

文章目录 前言QTimer:定时任务的强大工具QTimer的基本用法高级特性:单次定时器 QDateTime:处理日期和时间获取当前日期和时间日期和时间的格式化输出日期和时间计算 用例:创建一个倒计时应用结论 前言 在开发桌面应用程序时,处理时间和日期是一个常见且重要的任务。Qt框架提供了强大的工具来处理与时间相关的功能,其中QTimer和QDateTime是最核心的类。本