根据日期范围动态输入年份


dynamically input year based on date range

我有一个应用程序,从今年的9月1日开始,到次年的1月15日结束。

我需要做的是在他们提交申请时将当前年份输入数据库。

如果用户在2012年

9月1日至2013年1月15日之间完成申请,则将2012年输入表格。

假设它是 2013 年 1 月 2 日 - 它将在年份列中输入 2012

假设是 2012 年 11 月 10 日 - 它将进入 2012 年到年份列

假设它是 2013 年 12 月 5 日 - 它将在年份列中输入 2013 年。

我无法弄清楚如何插入适当的年份(无论如何在这种情况下)。

任何帮助,不胜感激。

你给自己一个宽限期,新年后15天。当用户提交表单时,捕获日期和年份。如果日期在 1 月 1 日至 1 月 15 日之间,则从当前年份中减去 1,如果不使用当前年份。

像这样:

$date = date('Y-m-d');
$year = date('Y');
if( $date >= date('Y-01-01') && $date <= date('Y-01-15') ) {
  $year--;
}
$today = time();
$date1 = strtotime('9/1/2012');
$date2 = strtotime('1/15/2012');
$currentYear = '';
if ($today < $date1) {
    $currentYear = '2011';
}
else if ($today < $date2) {
    $currentYear = '2012';
}
else {
    $currentYear = '2013';
}

这显然不是未来几年的动态,并且对小于 2012 年 9 月 1 日时您想做什么做出了一些假设,但希望这能让您开始。