gpt4 book ai didi

php - 查找当前周、月和年的日期范围

转载 作者:IT王子 更新时间:2023-10-28 23:51:05 26 4
gpt4 key购买 nike

假设我有一个约会对象:

2011-04-05 (i.e., 5th April, 2011)

我想找到当前周、月和年的日期范围

Current Week:  3rd April to 9th April
Current Month: 1st April to 30 April
Current Year: 1st Jan to 31 Dec

我知道当年总是从 1 月 1 日到 12 月 31 日,但是当前的月份和星期呢?我怎样才能找到它?

编辑:

如何找到比给定日期早或晚 10 天的日期。示例:

假设今天是 2011 年 4 月 6 日10 天前:2011 年 3 月 28 日10天后:2011年4月15日

伙计们,对此有什么想法吗?

最佳答案

 function rangeMonth ($datestr) {
date_default_timezone_set (date_default_timezone_get());
$dt = strtotime ($datestr);
return array (
"start" => date ('Y-m-d', strtotime ('first day of this month', $dt)),
"end" => date ('Y-m-d', strtotime ('last day of this month', $dt))
);
}

function rangeWeek ($datestr) {
date_default_timezone_set (date_default_timezone_get());
$dt = strtotime ($datestr);
return array (
"start" => date ('N', $dt) == 1 ? date ('Y-m-d', $dt) : date ('Y-m-d', strtotime ('last monday', $dt)),
"end" => date('N', $dt) == 7 ? date ('Y-m-d', $dt) : date ('Y-m-d', strtotime ('next sunday', $dt))
);
}

print_r (rangeMonth('2011-4-5')); // format: YYYY-M-D
print_r (rangeWeek('2011-4-5'));

rangeMonth()的输出

Array
(
[start] => 2011-04-01
[end] => 2011-04-30
)

rangeWeek()

的输出
Array
(
[start] => 2011-04-04
[end] => 2011-04-08
)

注意:如果 php.ini 中没有设置默认时区,getdate()、date() 等函数会抛出 Warning

关于php - 查找当前周、月和年的日期范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5552862/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com