js
var dateOfToday = Date.now()
var dayOfToday = (new Date().getDay() + 7 - 1) % 7
var daysOfThisWeek = Array.from(new Array(7)).map((_, i) => {
var date = new Date(dateOfToday + (i - dayOfToday) * 1000 * 60 * 60 * 24)
return date.getFullYear() +
'-' +
String(date.getMonth() + 1).padStart(2, '0') +
'-' +
String(date.getDate()).padStart(2, '0')
})
console.log(daysOfThisWeek[0]) //第一天
console.log(daysOfThisWeek[6]) //最后一天
php
//当前日期
$today = date("Y-m-d");
//$first =1 表示每周星期一为开始日期 0表示每周日为开始日期
$first=1;
//获取当前周的第几天 周日是 0 周一到周六是 1 - 6
$w=date('w',strtotime($today));
//获取本周开始日期,如果$w是0,则表示周日,减去 6 天
$weekStart=date('Y-m-d',strtotime("$today -".($w ? $w - $first : 6).' days'));
//本周结束日期
$weekEnd=date('Y-m-d',strtotime("$weekStart +6 days"));
$weekStart = str_replace("-", '.', $weekStart);
$weekEnd = str_replace("-", '.', $weekEnd);
return "{$weekStart}-{$weekEnd}";