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= "" cellpadding= "">
<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