如何使用 PHP strtotime 获取下周一?
How to get the next Monday using PHP strtotime?
我正在使用这个变量来获取当前月份:
setlocale(LC_TIME, array('ro.utf-8', 'ro_RO.UTF-8', 'ro_RO.utf-8', 'ro', 'ro_RO', 'ro_RO.ISO8859-2'));
$month = " " . strftime('%B',time()) . " ";
echo date("d", strtotime("next monday")); echo $luna; echo date("Y", strtotime("next monday"));
目前它运行良好,但是当月快结束并且下周一是下个月时,它会显示错误的月份,因为我的变量正在获取当前月份。
我不知道如何解决这个问题。
这里有错误strftime('%B',time())
,实际上应该是strftime('%B',strtotime("next monday"))
。
<?php
$next_monday_timestamp = strtotime("next monday");
echo "Next monday will be on " . strftime("%B", $next_monday_timestamp);
您正在使用 strftime
获取罗马尼亚语的月份名称,然后使用 date
和 strtotime
添加日期和年份数值。你不需要那样做。 strftime
包罗万象。
echo strftime("%d %B %Y", strtotime("next monday"));
这样就简单多了。只需调用一次 strtotime
即可获取下周一的时间戳,然后使用 strftime
根据您的语言环境设置时间戳的格式。
我正在使用这个变量来获取当前月份:
setlocale(LC_TIME, array('ro.utf-8', 'ro_RO.UTF-8', 'ro_RO.utf-8', 'ro', 'ro_RO', 'ro_RO.ISO8859-2'));
$month = " " . strftime('%B',time()) . " ";
echo date("d", strtotime("next monday")); echo $luna; echo date("Y", strtotime("next monday"));
目前它运行良好,但是当月快结束并且下周一是下个月时,它会显示错误的月份,因为我的变量正在获取当前月份。
我不知道如何解决这个问题。
这里有错误strftime('%B',time())
,实际上应该是strftime('%B',strtotime("next monday"))
。
<?php
$next_monday_timestamp = strtotime("next monday");
echo "Next monday will be on " . strftime("%B", $next_monday_timestamp);
您正在使用 strftime
获取罗马尼亚语的月份名称,然后使用 date
和 strtotime
添加日期和年份数值。你不需要那样做。 strftime
包罗万象。
echo strftime("%d %B %Y", strtotime("next monday"));
这样就简单多了。只需调用一次 strtotime
即可获取下周一的时间戳,然后使用 strftime
根据您的语言环境设置时间戳的格式。