介绍
在实际开发中,我们可能会遇到需要获取当天所在周的周日的情况,本文介绍如何通过 PHP 获取当前周的周日的年月日。
步骤
Step 1:获取当前日期
首先,我们需要获取当前的日期,可以通过 PHP 的 date 函数获取当前日期:
$curr_date = date('Y-m-d');
以上代码会将当前日期格式化为 'Y-m-d' 的字符串格式,例如 '2021-10-18'。
Step 2:获取当前日期的周几
接下来,我们需要获取当前日期是所在周的第几天(周日为第一天)。可以通过 PHP 的 date 函数结合 'w' 格式字符获取:
$day_of_week = date('w', strtotime($curr_date));
以上代码会将当前日期转换为时间戳,然后通过 'w' 格式字符获取当前日期的周几(0 表示周日,1 表示周一,以此类推)。
Step 3:获取距离周日的天数
接下来,我们需要计算当前日期距离周日还有几天。可以用 7 减去周几来计算:
$days_to_sunday = 7 - $day_of_week;
以上代码会计算距离周日还有几天。
Step 4:计算本周周日的日期
最后,我们可以通过当前日期加上距离周日的天数来计算本周周日的日期。可以用 PHP 的 strtotime 函数实现:
$sunday_date = date('Y-m-d', strtotime($curr_date . " +$days_to_sunday days"));
以上代码会将当前日期加上距离周日的天数,从而得到本周周日的日期。
完整示例
将以上步骤整合起来,我们得到以下完整的 PHP 代码示例:
$curr_date = date('Y-m-d'); // 获取当前日期
$day_of_week = date('w', strtotime($curr_date)); // 获取当前日期的周几
$days_to_sunday = 7 - $day_of_week; // 计算距离周日还有几天
$sunday_date = date('Y-m-d', strtotime($curr_date . " +$days_to_sunday days")); // 计算本周周日的日期
echo $sunday_date; // 输出本周周日的日期
输出结果为:
2021-10-24
参考文献
PHP date 函数:https://www.php.net/manual/zh/function.date.php
PHP strtotime 函数:https://www.php.net/manual/zh/function.strtotime.php