PHP: Wypełnianie tablicy nazwami kolejnych 12 miesięcy

for($x=0; $x<12; $x++)
{
    $month = mktime(0, 0, 0, date("m")+$x, date("d"),  date("Y"));
    $key = date('m', $month);
    $monthname = date('F', $month);
    $months[$key] = $monthname;
}

Wiem na pewno, że robię matematykę niepoprawnie dla czwartego parametru mktime. Zaczynam od bieżącego numeru miesiąca (7 to lipiec) i dodając 1 za każdy następny miesiąc, czasami kończy się to, że ten sam miesiąc jest zwracany dwa razy, może dlatego, że nie ustawiam go na początek miesiąca? Jak ulepszyłbyś / przekodowałeś to?

Wynikiem jest to, że w wyniku $ miesięcy powstanie tablica, w której 07 = 08 lipca = 09 sierpnia = wrzesień. Obecnie zamieszkuje dwa razy w październiku. Myślę, że ma to związek z tym, że dziś jest 31. i niepoprawnie dodaje i osiąga następny miesiąc.

questionAnswers(8)

yourAnswerToTheQuestion