获取从现在到x天之间的所有日期

mho*_*321 3 php arrays datetime loops

我试图调用一个函数,它将返回从现在到过去可变天数的所有日子.下面是一些与实际代码混合的伪代码.你们可以帮忙,这样它会回归所有日子吗?

function getTimeStamps($numDays){
    $today = date("Y-m-d");
    $startDate = $today - $numdays;
    $movingDay = $startDate;

    $results = array();
    while($movingDay <= $today){
        array_push($results,$movingDay);
        $movingDay + 1 day;
    }
    return $results;
}
    $dateList = getTimeStamps(8);
Run Code Online (Sandbox Code Playgroud)

这个功能会回来

array(
    '2013-12-10',
    '2013-12-11',
    '2013-12-12',
    '2013-12-13',
    '2013-12-14',
    '2013-12-15',
    '2013-12-16',
    '2013-12-17'
);
Run Code Online (Sandbox Code Playgroud)

Joh*_*nde 6

这应该是你需要的繁重工作.您可以修改它以适合您的确切目的.

$start    = new DateTime('2013-12-01');
$end      = new DateTime('2013-12-17');
$interval = new DateInterval('P1D');
$period   = new DatePeriod($start, $interval, $end);

foreach ($period as $dt)
{
    echo $dt->format("Y-m-d") . PHP_EOL;
}
Run Code Online (Sandbox Code Playgroud)

看到它在行动