Stuff » Codeschnipsel » PHP » Kalender
Beschreibung:
Ein Kalender, der den aktuellen Monat anzeigt und den aktuellen Tag hervorhebt.Code:
<?php
$heute = date(d);
$tage = date(t);
$monat = date(m);
$jahr = date(y);
$erstertag = mktime(0,0,1,$monat,1,$jahr);
$letztertag = mktime(0,0,1,$monat,$tage,$jahr);
$erster = date(w,$erstertag);
$letzter = date(w,$letztertag);
$differenz = 7-$letzter;
$jahr = date(Y);
$monats = array(
$kalender_januar[$lang], $kalender_februar[$lang], $kalender_maerz[$lang],
$kalender_april[$lang], $kalender_mai[$lang], $kalender_juni[$lang],
$kalender_juli[$lang], $kalender_august[$lang], $kalender_september[$lang],
$kalender_oktober[$lang], $kalender_november[$lang], $kalender_dezember[$lang]);
$monat = $monats[date("n", time())-1];
if($erster == 0) $erster = 7;
if($letzter == 0) $letzter = 7;
for($i=1;$i<$erster;$i++) {
$begin.= "<td></td>";
}
for($i=0;$i<$differenz;$i++) {
$ende.= "<td></td>";
}
echo "<table border= "1" cellspacing= "0 " cellpadding= "0 ">
<tr style="background-color: #f0f8ff;">
<td colspan="7" align="center"><b>$monat $jahr</b></td>
</tr>
<tr>
<td width= "22 "></td>
<td width= "22 "></td>
<td width= "22 "></td>
<td width= "22 "></td>
<td width= "22 "></td>
<td width= "22 "></td>
<td width= "22 "></td>
</tr>
<tr style="background-color: #f0f8ff;">
<th><b>".$kalender_mo[$lang]."</b></th>
<th><b>".$kalender_di[$lang]."</b></th>
<th><b>".$kalender_mi[$lang]."</b></th>
<th><b>".$kalender_do[$lang]."</b></th>
<th><b>".$kalender_fr[$lang]."</b></th>
<th><b>".$kalender_sa[$lang]."</b></th>
<th><b>".$kalender_so[$lang]."</b></th>
</tr>
<tr>
$begin";
for($i=1;$i<($tage+1);$i++) {
if($erster==0):
echo " <tr>";endif;
if($i == $heute) {
echo " <td style="background-color: #ffffff; border: 1px solid #ff0000;" align="center"><b>$i</b></td>n";
}
else if($erster==7) {
echo " <td style="background-color: #ffcccc;" align="center"><b>$i</b></td>n";
}
else {
echo " <td style="background-color: #D5E0E6;" align="center"><b>$i</b></td>n";
}
if($erster==7):
echo " </tr>n <tr>n";
$erster=0;
endif;
$erster++;
}
echo "$ende</tr>";
echo "</table>";
?>
Ausgabe:
| 2012 | ||||||
| 1 | 2 | 3 | 4 | 5 | ||
| 6 | 7 | 8 | 9 | 10 | 11 | 12 |
| 13 | 14 | 15 | 16 | 17 | 18 | 19 |
| 20 | 21 | 22 | 23 | 24 | 25 | 26 |
| 27 | 28 | 29 | ||||