我有一个日历,其中包含用户从安装开始日期输入的事件。这些事件总是从开始日期开始重复,每隔 X 天、几个月或几年,我们不知道结束日期。我需要找到以 unix 时间戳格式发生的下一个事件。我试图找出内置的 PHP DateInterval 类,但我不知道如何在没有已知结束日期的情况下。
这是我到目前为止所拥有的
/* User Input */
$installdate="315558000";// 1st Jan 1980
$Every = 1; // Could be 1 =>
$DateOption = 'Months'; // Could be 'Days' 'Months' or 'Years'
#Possible user selections
$DateJustify = array('Days'=>j,'Months'=>n,'Years'=>Y);
#Getting the next service date into printed variables for mktime
foreach($DateJustify as $keyDate => $dt ){
${$keyDate}=date($dt,$installdate);
if($DateOption == $keyDate )
${$keyDate} += $Every;
}
这将返回所有适合使用 mktime 时间戳的内容,但它只是给出了安装日期的下一个日期。由于安装日期从一天开始,最终秒、分钟或小时都无关紧要