Una forma más reducida es cambiando los locales de tu servidor, con la función
setlocale, esto sólo funciona en servidores linux:
Código PHP:
// la siguiente línea ordena que todo se vea en Español
setlocale (LC_ALL, 'es_ES.ISO8859-1');
for ($i = 1; $i <= 12; $i++) {
$link = $i+1;
if($_GET["month"] == $link){
$selected = "selected='selected' ";
} else {
$selected = "";
}
$year = $_GET["year"];
echo "
<option value='index.php?month=$link&year=$year' $selected>" .
strftime("%B", mktime(0,0,0,$i,1,$_GET["year"])) . "</option>\n";
}
Si no estás en un hosting con Linux podrías reducir código usando arreglos, algo asi:
Código PHP:
$meses = array("Enero", "Febrero", "Marzo", "Abril", "Mayo", "Junio", "Julio", "Agosto", "Setiembre", "Octubre", "Noviembre", "Diciembre");
for ($i = 1; $i <= 12; $i++) {
$link = $i+1;
if($_GET["month"] == $link){
$selected = "selected='selected' ";
} else {
$selected = "";
}
$year = $_GET["year"];
echo "
<option value='index.php?month=$link&year=$year' $selected>" .
$meses[($i-1)]. "</option>\n";
}
No he probado el segundo código, pero si tienes problemas ya sabes a quien culpar