- array_push: documentation ( source)
- var_dump: documentation ( source)
<?php
$begin_date = new DateTime('2016-01-01 00:00:00');
$end_date = new DateTime('2017-05-02 23:59:59');
$result = array();
$current = clone $begin_date;
while ($current < $end_date) {
array_push($result, $current->format('Y-m'));
$current->add(DateInterval::createFromDateString('1 Month'));
}
var_dump($result);