I’m starting with a date 2010-05-01
and ending with 2010-05-10
. How can I iterate through all of those dates in PHP?
Advertisement
Answer
Requires PHP5.3:
$begin = new DateTime('2010-05-01'); $end = new DateTime('2010-05-10'); $interval = DateInterval::createFromDateString('1 day'); $period = new DatePeriod($begin, $interval, $end); foreach ($period as $dt) { echo $dt->format("l Y-m-d H:i:sn"); }
This will output all days in the defined period between $start
and $end
. If you want to include the 10th, set $end
to 11th. You can adjust format to your liking. See the PHP Manual for DatePeriod.