function dateRange($d1,$d2)
{
$timestamp1=strtotime($d1);
$timestamp2=strtotime($d2);
if($timestamp1==$timestamp2) return;
if($timestamp1>$timestamp2) return '日期错误';
$n=round(($timestamp2-$timestamp1)/3600/24);
$y=date('Y',$timestamp1);
$m=date('m',$timestamp1);
$d=date('d',$timestamp1);
$arr=array();
for($i=0;$i<$n+1;$i++)
{
$arr[]=date('Y-m-d',mktime(0,0,0,$m,$d+$i,$y));
}
return $arr;
}
print_r(dateRange('2005-11-12','2006-01-12'));
$startDate = '2005-11-12';
$endDate = $startDate ;
while($endDate != '2006-01-12')
{
echo $endDate.'<br/>';
$endDate = date('Y-m-d',strtotime($endDate.' +1 day'));
}
echo $endDate.'<br/>';
function listD($start, $end){
if (!$start || !$end || ($start = strtotime($start))>($end = strtotime($end)))return false; $str = array(date('Y-m-d', $start));
$one = 60*60*24;
while($start < $end){
$str[] = date('Y-m-d', $start+=$one);
}
return $str;
}print_r( listD('2005-11-12', '2006-01-12') );
最简单,每次增加一天 3600*24