我想每隔一周显示一次,持续 5 天。所以本周是 2 月 8 日至 2 月 12 日,我希望它在 2 月 22 日至 2 月 26 日再次显示并无限期地继续,这段代码会起作用吗?谢谢。
$StartDate = strtotime('2016-01-25');
$CurDate = date("Y-m-d");
$NextDate = date("Y-m-d", strtotime("+2 week", $StartDate));
$EndDate = date("Y-m-d", strtotime("+18 days", $StartDate));
while ($CurDate > $NextDate && $CurDate > $EndDate ) {
$NextDate = date("F j", strtotime("+2 week", strtotime($NextDate)));
$EndDate = date("F j", strtotime("+18 days", strtotime($EndDate)));
}
<?php if ( $CurDate >= $NextDate && $NextDate <= $EndDate ) { echo "..."; } ?>
我认为代码是正确的,但我不确定它是否会循环。
谢谢。
最好在寻求帮助之前运行您的代码并尝试自己调试它,您永远不知道自己会找到什么!
至于你的代码,我没有看到任何直接的问题,但我不是PHP解释器!
可能会
,但最好使用 date()
函数来获取一年中的当前一周:
if (((int) date('W')) % 2 === 0)
{
// display message
}
date('W')
将返回当前周数(每年 52 周)。上面的代码将在偶数周显示消息,并在奇数周隐藏它。您可以检查=== 1
以改为在奇数周显示消息。