欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

php获取本周和上周的开始日期和结束日期

程序员文章站 2022-04-09 12:26:04
...
最近由于工作的需要使用php获取当前周以及上周的开始日期和结束日期。

网上找了下,没有合适的,于是自己做了一下总结。

具体内容和代码如下:

header('Content-type: text/html; charset=utf-8');

$date=date('Y-m-d'); //当前日期

$first=1; //$first =1 表示每周星期一为开始日期 0表示每周日为开始日期

$w=date('w',strtotime($date)); //获取当前周的第几天 周日是 0 周一到周六是 1 - 6

$now_start=date('Y-m-d',strtotime("$date -".($w ? $w - $first : 6).' days')); //获取本周开始日期,如果$w是0,则表示周日,减去 6 天

$now_end=date('Y-m-d',strtotime("$now_start +6 days")); //本周结束日期

$last_start=date('Y-m-d',strtotime("$now_start - 7 days")); //上周开始日期

$last_end=date('Y-m-d',strtotime("$now_start - 1 days")); //上周结束日期

echo '本周开始日期:',$now_start,'
';
echo '本周结束日期:',$now_end,'
';
echo '上周开始日期:',$last_start,'
';

echo '上周结束日期:',$last_end,'
';

注意:由于国外的星期都是从周日开始,中国习惯从周一开始,所以直接使用strtotime("last monday") 就会出现错误的结果。

相关标签: 日历源码