gpt4 book ai didi

php - 获取上周一 - 周日的日期 : Is there a better way?

转载 作者:IT老高 更新时间:2023-10-29 00:01:59 24 4
gpt4 key购买 nike

我正在为 mySQL 准备查询以获取前一周的记录,但我必须将周视为周一至周日。我最初是这样做的:

WHERE YEARWEEK(contactDate) = YEARWEEK(DATE_SUB(CURDATE(),INTERVAL 7 DAY))

发现 mySQL 将星期视为星期日 - 星期一。因此,我正在解析 php 中的开始和结束日期,如下所示:

$i = 0; 
while(date('D',mktime(0,0,0,date('m'), date('d')-$i, date('y'))) != "Mon") {
$i++;
}

$start_date = date('Y-n-j', mktime(0,0,0,date('m'), date('d')-($i+7), date('y')));
$end_date = date('Y-n-j', mktime(0,0,0,date('m'), date('d')-($i+1), date('y')));

这有效 - 它获取当前周的星期一日期(向后走直到遇到星期一)然后根据该日期计算前一周的日期。

我的问题是:有没有更好的方法来做到这一点?看起来很草率,我希望有人能给我一个更简洁的方法来做这件事——或者可能不是因为我需要周一到周日的几周。

编辑

显然,有:

$start = date('Y-m-d',strtotime('last monday -7 days'));
$end = date('Y-m-d',strtotime('last monday -1 days'));

这大约是可读性的一百万倍。谢谢。

最佳答案

你可以使用strtotime对于这种日期问题

echo strtotime("last Monday");

关于php - 获取上周一 - 周日的日期 : Is there a better way?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2412582/

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