Con el permiso de @MinusFour y los presentes.
Tu duda principal trata de cómo puedes imprimir los meses a partir de una fecha, ¿cierto?
Creo que por lógica lo puedes resolver con simple pseudocódigo, simplemente es identificar el mes e imprimir los meses posteriores. Si identificas un mes, lo haces por medio de su número en el calendario. Luego recorres los meses y condicionas que te imprima el mes siempre y cuando sea mayor al mes ingresado.
$month = substr("30/05/2014",3,2);
foreach($months as $key => $value) {
if($key >= $month) {
echo $value."<br/>";
if($key === 12)
echo $months[1];
}
}
Practicar resolviendo ejercicios algorítmicos para que desarrolles tu lógica.
Realmente lo que hace ese codigo (que es muy parecido al suyo) es contar desde el mes que sacaste de la fecha a enero. El primer post dice esto:
necesito hacer una funcion que me imprima los meses desde una fecha seleccionada hasta la fecha actual..
Por lo que a menos que estemos en enero, el codigo no funciona correctamente. Por ejemplo, si estuvieramos en noviembre del 2014, contaria diciembre y enero tambien. Encima, no esta contemplando los meses después del primer año.