php获取开始与结束日期之间所有日期的方法

/**
 * 获取指定日期段内每一天的日期
 * @param Date $startdate 开始日期
 * @param Date $enddate  结束日期
 * @return Array
 */
function getDateFromRange($startdate, $enddate){
  $stimestamp = strtotime($startdate);
  $etimestamp = strtotime($enddate);
  // 计算日期段内有多少天
  $days = ($etimestamp-$stimestamp)/86400+1;
  // 保存每天日期
  $date = array();
  for($i=0; $i<$days; $i++){
    $date[] = date('Y-m-d', $stimestamp+(86400*$i));
  }
  return $date;
}
$startdate = '2016-08-29';
$enddate = '2016-09-29';
// demo
$date = getDateFromRange($startdate,$enddate);
print_r($date);

运行结果如下:

Array
(
[0] => 2016-08-29
[1] => 2016-08-30
[2] => 2016-08-31
[3] => 2016-09-01
[4] => 2016-09-02
[5] => 2016-09-03
[6] => 2016-09-04
[7] => 2016-09-05
[8] => 2016-09-06
[9] => 2016-09-07
[10] => 2016-09-08
[11] => 2016-09-09
[12] => 2016-09-10
[13] => 2016-09-11
[14] => 2016-09-12
[15] => 2016-09-13
[16] => 2016-09-14
[17] => 2016-09-15
[18] => 2016-09-16
[19] => 2016-09-17
[20] => 2016-09-18
[21] => 2016-09-19
[22] => 2016-09-20
[23] => 2016-09-21
[24] => 2016-09-22
[25] => 2016-09-23
[26] => 2016-09-24
[27] => 2016-09-25
[28] => 2016-09-26
[29] => 2016-09-27
[30] => 2016-09-28
[31] => 2016-09-29
)
posted @ 2018-03-27 16:05  郭德纲又打人了嘿  阅读(268)  评论(0编辑  收藏  举报