<?php
// 获取当前日期
$today = date("Y-m-d");
// 获取当前年份和月份
$year = date("Y", strtotime($today));
$month = date("m", strtotime($today));
// 获取本周第一天是周几(0 = 星期天, 1 = 星期一, ...)
$firstDayOfWeek = date("w", strtotime("$year-$month-01"));
// 修正$firstDayOfWeek,确保它是本月的第一天(如果本月第一天不是星期一,则调整到本月第一个星期一)
$firstDayOfMonth = "$year-$month-01";
$firstDayOfWeekOfMonth = date("w", strtotime($firstDayOfMonth));
$firstDayOfWeekOffset = ($firstDayOfWeek - $firstDayOfWeekOfMonth + 7) % 7; // 计算偏移量
// 计算本周第一天
$firstDayOfWeekDate = date("Y-m-d", strtotime("$firstDayOfMonth +$firstDayOfWeekOffset days"));
// 计算本周最后一天(星期天)
$lastDayOfWeekDate = date("Y-m-d", strtotime("$firstDayOfWeekDate +6 days"));
echo "本周第一天: $firstDayOfWeekDate\n";
echo "本周最后一天: $lastDayOfWeekDate\n";
?>
这段代码首先获取了当前日期,然后计算出当前年份和月份。接着,它计算了本月第一天是周几,以及需要调整的偏移量,以便找到本周的第一天(这里假设周一为一周的开始)。最后,基于本周的第一天,计算出本周的最后一天(星期天),并打印出来。注意,这里的实现假设了每周从星期一开始,并且根据当前月份的第一天是周几来调整偏移量。