在每个月的第一个星期一的活动开始前7天显示警报

时间:2013-11-01 23:44:02

标签: php date datetime

我有一个网站,在每个月的第一个星期一举行预定的活动。

我需要在主页上显示一条消息,该消息将在活动开始前一周开始显示,并继续显示直到活动的日期/时间。

我确信有几种方法可以做到这一点,只是想知道是否有人有任何对他们有用的东西。

感谢。

2 个答案:

答案 0 :(得分:0)

我们必须测试当前日期是在该月的第一个星期一之前的7天的间隔内。我们还必须测试两种情况:假设我们今天在X个月,这个月的第一个星期一可能在X或X + 1个月。

我会做那样的事情:

<?php
if(
    (time() <= strtotime('first monday') && 
     time() >= strtotime('first monday - 7 days'))
    || (time() <= strtotime('first monday + 1 months') 
       && time() >= strtotime('first monday + 1 months - 7 days'))
) {
    echo 'Display your message';
}
?>

答案 1 :(得分:0)

  

本月第一个星期一前七天

在逻辑上等同于更简单的陈述:

  

本月最后一个星期一

因为,在您的情况下,该日期将在未来发生。

您可以通过以下方式获取:

strtotime("last monday of this month");

您还可以执行以下操作:

strtotime("last monday of october 2013");
strtotime("last monday of last month");