我正在尝试循环,但我不能

时间:2011-10-19 20:59:22

标签: php mysql codeigniter date for-loop

我正在尝试使用日期函数进行for循环,但我不能。就我而言,我试图将2001-feb循环到2009-jan并希望插入日期,但我不能。谁能帮我?这是我的代码:

for($start_year; $start_year<= $end_year; $start_year++)
{
  for($start_month; $start_month<= $end_month; $start_month++)
  {
    $date_input = $start_year."-".$start_month."-27";
  }
}

1 个答案:

答案 0 :(得分:4)

看起来像PHP。

for($start_year; $start_year<= $end_year; $start_year++)

您没有为$start_year指定起始值,因此除非您在其他位置定义了该变量,否则这是语法错误。同样,由于你在不同月份开始/结束,你不能真正使用循环,不跳过篮球。你可能会更喜欢这样的事情:

$date = strtotime("2001-02-01 00:00:00");
$end = strtotime("2009-01-01 00:00:00");

do {
   echo date('Y-m', $date), "-27";
   $date = strtotime("+1 month", $date);
} while ($date <= $end);

请注意,strtotime只是实现此目的的一种方式。您可以使用DateTime对象和1个月DateInterval,但这仅适用于PHP 5.3+。