从开始日期到结束日期循环

时间:2013-03-09 10:36:07

标签: php date loops

我想制作一个用户可以选择的日期选择列表。日期应从今天的当前日期开始,并在结束。我只是不知道如何在循环中执行它所以我不会一遍又一遍地改变日期。谢谢。请帮忙。

5 个答案:

答案 0 :(得分:0)

<?php
    $today = date('d/m/y');
    for($i=0; $i<5; $i++) {
          $nextDay = date('m/d/y', time() + (86400*$i));
          //make something with your date
    }
?>

你的意思是这样吗?

答案 1 :(得分:0)

echo "<select name=\"date\">\n";
for($i=time();$i<time()+5*24*60*60;$i+=24*60*60) {
    $d = date('Y-m-d', $i);
    echo echo "<option value=\"$d\">$d</option>\n";
}
echo "</select>\n";

答案 2 :(得分:0)

快速而肮脏的方式:

for ($i = 0; $i < 5; $i++){
    print date('Y-m-d', mktime(0, 0, 0, date('m'), date('d') + $i, date('Y')));
    print "\n";
}

答案 3 :(得分:0)

您可以使用UNIX时间戳来存储时间和循环。

使用date('Y-m-d', $timestamp)生成一串日期。

使用strtotime($string)将Y-m-d字符串转换为时间戳整数。

$now = time();
for($i = $now; $i < $now + 5*86400; $i=$i+86400)
{
    $Ymd = date('Y-m-d', $i);
    //do other things here.
}

答案 4 :(得分:0)

您可以使用php DateTime函数:

<?php

    $date = new DateTime();    // Without argument: now
    $interval = new Dateinterval("P1D"); // Period: 1 day
    for ($i = 0; $i <= 5; $i++) {
       echo $date->format("Y-m-d")."\n";
       $date->add($interval);
    }
?>