我想按星期几和时间获得下一次课的日期。例如,所有课程都在周二和周六晚上10:45举行 所以我想显示从当前日期/时间开始的下一堂课的日期。
我没有时间就能得到。但是,如果今天是星期二下午4点,上课是星期二晚上10:45,那应该告诉我今天的日期,而不是星期六,因为今天之后的下一堂课是星期六。
我尝试了一段时间的测试代码,但是没有用。
$nextTuesday = strtotime('next tuesday 10:59PM');
echo date('Y-m-d', $nextTuesday);
如果我给时间,那是行不通的。
随着时间的推移,如果日期相同且时间未过去,则应显示当前日期。
答案 0 :(得分:0)
好的,我用我的逻辑解决了这个问题。
date_default_timezone_set("ET");
$currentday=date('Y-m-d H:i:s');
$currentdayW=date("l", strtotime($currentday));
if (($currentdayW=="Tuesday") ||($currentdayW=="Friday"))
{
$chktime = date('Y-m-d 21:00:00');
if ($chktime > $currentday) { $drawdate = $chktime;}
}
if ((($currentdayW=="Tuesday") && ($chktime < $currentday)) ||
($currentdayW=="Wednesday") || ($currentdayW=="Thursday"))
{
$drawdate = strtotime('next friday');
$drawdate=date('Y-m-d 21:00:00', $drawdate);
}
if ((($currentdayW=="Friday") && ($chktime < $currentday)) ||
($currentdayW=="Saturday") || ($currentdayW=="Sunday") ||
($currentdayW=="Monday"))
{
$drawdate = strtotime('next tuesday');
$drawdate=date('Y-m-d 21:00:00', $drawdate);
}
echo $drawdate;