3v4l.org

run code in 300+ PHP versions simultaneously
<?php date_default_timezone_set('America/Houston'); $start = new DateTime('2014-08-10'); $start->modify('first day of this month'); $end = new DateTime('2012-02-09'); $end->modify('first day of next month'); $interval = DateInterval::createFromDateString('1 month'); $period = new DatePeriod($start, $interval, $end); foreach ($period as $dt) { echo $dt->format("Y-m") . PHP_EOL; }

preferences:
43.87 ms | 402 KiB | 5 Q