php获取指定日期段内每一天的日期和天数
/**
* 获取指定日期段内每一天的日期和天数
* @param Date $startdate 开始日期 格式化时间 Y-m-d H:i:s
* @param Date $enddate 结束日期 格式化时间 Y-m-d H:i:s
* @return Array
*/
function getDateFromRange($startdate, $enddate,$format='Y-m-d'){
$startdate = date($format.' 00:00:00',strtotime($startdate));
$enddate = date($format.' 23:59:59',strtotime($enddate));
$stimestamp = strtotime($startdate);
$etimestamp = strtotime($enddate);
if($etimestamp<$stimestamp) return [];
// 计算日期段内有多少天
$days = (int)ceil(($etimestamp-$stimestamp)/86400);
// 保存每天日期
$date = array();
for($i=0; $i<$days; $i++){
$date[] = date($format, $stimestamp+(86400*$i));
}
$data = [
'dates' => $date,
'days' => $days,
];
return $data;
}