0
我正在尝试创建日历,其中日期递增,并且每个日期都是可点击的,链接到搜索。奇怪的部分是日期停止在25th October
,并停止递增。即24th, 25th, 25th, 25th...
PHP日期递增错误
无论哪一天日历开始(一直盯着它几天),但在25th it stops incrementing
。 。
感谢您的任何意见(后间隙的第二部分可能是无关紧要的,但包括它的情况下,有可能是任何一个环节)
for ($i = 1; $i <= 30; $i++){
$date = date("d-m-Y", strtotime($date) + 86400);
array_push($array_date, $date);
$separatedate = explode('-', $date);
$getday = date("l", strtotime($date));
print "<button class='submitsearch btn' value=$array_date[$i]>" . ltrim($separatedate[0], '0') . "<br>" . $getday . "<br></button>";
if (!checkdate($separatedate[1] , $separatedate[0]+1 , $separatedate[2])) {
$nextmonth = date("F", strtotime($date) + 86400);
print "<strong>". $nextmonth . "</strong><hr/>";
}
}
或者只是使用'strtotime($ date。“+ 1 day”)' – Ben
@BenPearlKahan:可能,但我通常会建议从混音中删除字符串转换时,他们不需要。像这样格式化和解析是一个非常糟糕的主意,IMO。 –
谢谢Jon!和本贡献。给Jon指出问题的功劳。对于那些想知道实现的最终解决方案,我用创建一个新的DateTime对象替换了困扰的行:$ date = new DateTime($ date); $ date - >(new DateInterval('P1D'); $ date = $ date-> format('d-m-Y');用于与其他代码集成:) – lorry