Aquí hay una pequeña función para generar un calendario. Es muy rudimentaria y básica, pero para dar una idea de como puede ser sirve:
Código PHP:
<?
function Calendario($mes, $anio) {
$Dia_inicial = date("w", mktime(0,0,0,$mes,1,$anio));
if ($Dia_inicial == 0) {
$Dia_inicial = 7;
}
?>
<table>
<tr><td colspan="7"><?echo($mes.' de '.$anio);?></td></tr>
<tr>
<td>Lu</td>
<td>Ma</td>
<td>Mi</td>
<td>Ju</td>
<td>Vi</td>
<td>Sa</td>
<td>Do</td>
</tr>
<tr> <?
for ($i=1; $i< $Dia_inicial; $i++) {
?>
<td> </td>
<?
}
$Dias_totales = date("t", mktime(0,0,0,$mes,1,$anio));
for ($i=1; $i <= $Dias_totales; $i++) {
if ($Dia_inicial == 8) {
?>
</tr>
<tr>
<?
$Dia_inicial = 1;
}
$Dia_inicial++;
echo('<td>'.$i.'</td>');
?>
<?
}
echo('
</tr>
<table>');
}
?>
Por supuesto es mejorable, pero espero que sirva.
Un saludo.