Tip: Dates Between two dates in PHP

The code below prints all the dates between 2 given dates

<?
	$date1='2008-12-28';
	$date2='2009-11-3';
 
	$parts1=explode('-',$date1);
	$parts2=explode('-',$date2);
 
	$year1=$parts1[0];
	$month1=$parts1[1];	
	$day1=$parts1[2];
 
	$year2=$parts2[0];
	$month2=$parts2[1];	
	$day2=$parts2[2];
 
	$t1=mktime(0,0,0,$month1,$day1,$year1);
	$t2=mktime(0,0,0,$month2,$day2,$year2);	
 
	$total_days=floor( ($t2-$t1)/(86400));	// convert seconds into days by dividing by 86400
 
	for($i=1;$i<=$total_days;$i++){
		$dates[]=date('d-M-y',mktime(0,0,0,$month1,$day1+$i,$year1));

	}
 
	foreach ($dates as $d){
		echo $d."<br>";
	}
 ?>

 

More PHP tips