【发布时间】:2017-11-24 13:40:48
【问题描述】:
尝试编写一个 IF 语句来显示圣诞节开放时间,使用公式如果今天的日期在 12 月 1 日和 1 月 5 日之间,否则显示正常时间。但我得到的只是正常时间。
$xmasStart = date('m-d', strtotime('11-01'));
$xmasEnd = date('m-d', strtotime('01-05'));
if((date('m-d') > $xmasStart) && (date('m-d') < $xmasEnd)) {
echo 'Christmas Opening Hours';
} else {
echo '<p class="marginbottom0">Monday to Friday: 8am - 6pm<br><small>Saturday & Sunday: Appointment only</small></p>';
}
【问题讨论】:
-
为了确定一个日期是否大于另一个,您需要一年。如果它们都在同一年,则一月永远不会大于十二月,并且只有一个月和一天,它们被假定为同一年。您的代码应该如何猜测您的意思是次年的一月?常识 - 如果我递给你两张纸,一张写着“1 月 5 日”,另一张写着“12 月 1 日”,并要求你按照哪一张在前排序,你的答案是什么?
-
Ken,我的回答是先给出哪个日期,将是第一次出现,第二次出现在下一年 - 这是常识。
-
@Lee Ken 可能不再在场,因此您可能需要删除您对他的评论并使用
@重新发布,就像我在这里为您所做的那样。记得遵循@member space message格式。 -
@Lee 您没有尝试以下任何答案吗?我觉得两者都不错。