php获取近7天或者30天日期或者更大日期区间的日期方法(转)
原文:https://blog.csdn.net/sqlquan/article/details/87795918
1、封装
copy/**
* 获取一个日期范围内的日期
* @param int $interval 日期范围
* @param string $type 取值类型,-:获取之前日期;+:获取之后的日期
* @return array
*/
protected function getDateInterval(int $interval,string $type) :array
{
$dateArr = [];
for ($i = $interval - 1; $i >= 0; $i--) {
array_push($dateArr, date('Y-m-d', strtotime("{$type}{$i} day")));
}
if($type=='+')$dateArr=array_reverse($dateArr);
return $dateArr;
}
2、调用
copy$rs = $this->getDateInterval(14,'-');
print_r($rs);
array:14 [
0 => "2022-07-13"
1 => "2022-07-14"
2 => "2022-07-15"
3 => "2022-07-16"
4 => "2022-07-17"
5 => "2022-07-18"
6 => "2022-07-19"
7 => "2022-07-20"
8 => "2022-07-21"
9 => "2022-07-22"
10 => "2022-07-23"
11 => "2022-07-24"
12 => "2022-07-25"
13 => "2022-07-26"
]
$rs2 = $this->getDateInterval(14,'+');
print_r($rs2);
array:14 [
0 => "2022-07-26"
1 => "2022-07-27"
2 => "2022-07-28"
3 => "2022-07-29"
4 => "2022-07-30"
5 => "2022-07-31"
6 => "2022-08-01"
7 => "2022-08-02"
8 => "2022-08-03"
9 => "2022-08-04"
10 => "2022-08-05"
11 => "2022-08-06"
12 => "2022-08-07"
13 => "2022-08-08"
]
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构