PHP生成指定范围的日期

/**
  * 生成指定范围的日期
  *
  * @param $string $startDate    开始日期 2020-01-01
  * @param $string $endDate      结束日期 2020-01-31
  *
  * @return array
  */
public static function genRangeDate($startDate, $endDate)
{
    $array = [];
    $start = strtotime($startDate);
    $end = strtotime($endDate);
    // 防止程序异常出现死循环,一年最多366天(闰年)所以这里给此固定值
    $limit = 366;
    $i = 1;
    while ($limit--) {
        $next = strtotime("+$i day", $start);
        $i++;
        if ($next < $end) {
            $array[] = date('Y-m-d', $next);
        } else {
            break;
        }
    }

    array_unshift($array, $startDate);
    array_push($array, $endDate);

    return $array;
}

 

 

效果

 

posted @ 2020-04-08 16:31  宋健安  阅读(857)  评论(0编辑  收藏  举报