php怎么获取本周的周一
时间 : 2023-04-26 01:00:02声明: : 文章内容来自网络,不保证准确性,请自行甄别信息有效性

在 PHP 中获取本周的周一可以使用 date() 函数和 strtotime() 函数的组合。

首先,通过 date() 函数获取当前时间的周几,即:

$dayOfWeek = date('N');

其中,'N' 是 date() 函数的格式化参数,表示周几,取值范围为 1~7,1 表示周一,7 表示周日。

然后,通过 strtotime() 函数获取当前时间所在周的周一的时间戳,即:

$monday = strtotime("-$dayOfWeek day");

其中,"-$dayOfWeek day" 表示当前时间往前推 $dayOfWeek 天,即得到本周的周一的时间戳。

最后,通过 date() 函数对时间戳进行格式化,即可得到本周的周一:

echo date('Y-m-d', $monday);

完整代码示例:

$dayOfWeek = date('N');

$monday = strtotime("-$dayOfWeek day");

echo date('Y-m-d', $monday);

执行上述代码,即可输出本周的周一的日期,例如:

2021-09-20

需要注意的是,以上代码的结果取决于 PHP 执行所在的服务器所在时区的设置。如果时区不是 UTC+0,输出的日期会有相应的偏差。在实际应用中,可以通过设置时区来保证输出结果的正确性。

在PHP中获取本周的周一可以使用date()函数和strtotime()函数。具体实现步骤如下:

1. 获取当前日期时间,可以使用date()函数,函数中传入 "Y-m-d" 参数表示获取当前年月日格式的日期。

2. 使用date()函数获取当前日期所在的星期几,可以使用 "w" 参数,这个参数返回的值是 0(星期日)到 6(星期六)之间的整数。

3. 计算本周的周一日期。如果当前日期是周日,可以使用 strtotime() 函数将当前日期减去6天获得上周的周日,再加上1天即为本周的周一。如果当前日期不是周日,可以使用 $dayDiff 变量表示当前日期和周一之间相差的天数,然后使用 strtotime() 函数将当前日期减去这个差值即可。

以下是PHP代码示例:

$currentDate = date("Y-m-d");

$currentDayOfWeek = date("w", strtotime($currentDate));

if ($currentDayOfWeek == 0) {

$dayDiff = 6;

} else {

$dayDiff = $currentDayOfWeek - 1;

}

$mondayDate = date("Y-m-d", strtotime("-".$dayDiff." days", strtotime($currentDate)));

echo $mondayDate;

这段代码首先获取当前日期和当前日期是星期几,然后根据当前日期是不是周日计算出相差的天数,最后使用strtotime()函数计算出周一的日期并输出。

需要注意的是,以上代码中使用了 strtotime() 函数两次,第一次用于获取当前日期的星期几,第二次用于计算周一的日期。strtotime() 函数可以将一个日期字符串解析为 Unix 时间戳,因此可以方便地进行日期的计算。