function generate_months($start='now', $num=12) {
$months = array();
for($i=0; $i<$num; $i++) {
$months[] = date('Y-m', strtotime("$start + $i month")) ;
}
return $months;
}
print_r( generate_months() );
// Array
// (
// [0] => 2015-05
// [1] => 2015-06
// [2] => 2015-07
// [3] => 2015-08
// [4] => 2015-09
// [5] => 2015-10
// [6] => 2015-11
// [7] => 2015-12
// [8] => 2016-01
// [9] => 2016-02
// [10] => 2016-03
// [11] => 2016-04
// )
print_r( generate_months('1 year ago', 12) );
// Array
// (
// [0] => 2014-05
// [1] => 2014-06
// [2] => 2014-07
// [3] => 2014-08
// [4] => 2014-09
// [5] => 2014-10
// [6] => 2014-11
// [7] => 2014-12
// [8] => 2015-01
// [9] => 2015-02
// [10] => 2015-03
// [11] => 2015-04
// )
print_r( generate_months('2018-01', 12) );
// Array
// (
// [0] => 2018-01
// [1] => 2018-02
// [2] => 2018-03
// [3] => 2018-04
// [4] => 2018-05
// [5] => 2018-06
// [6] => 2018-07
// [7] => 2018-08
// [8] => 2018-09
// [9] => 2018-10
// [10] => 2018-11
// [11] => 2018-12
// )