Es soll ein Kalender für das aktuelle Jahr ausgegeben werden, wobei der aktuelle Tag im aktuellen Monat hervorgehoben werden soll.
Beschreibung
Der folgende Code Snippet durchläuft zwei FOR-Schleifen. Die erste Schleife sorgt für das Durchlaufen aller 12 Monate, und schreibt jeden Monat in eine eigene Tabellenzelle (alle 3 Monate erfolgt ein Tabellenumbruch). Die zweite Schleife baut die Tabelle für die Monatsansicht auf. Hier wird zuerst die Tabelle mit Leerzellen gefüllt, bis zu dem Wochentag, an dem der Monat beginnt. Danach wird die Tabelle mit den Monatstagen gefüllt und der aktuelle Tag im aktuellen Monat besonders hervorgehoben.
<?PHP
$strBuildYear = '<table><tr>';
for ( $iCurrentMonth = 1; $iCurrentMonth <= 12; $iCurrentMonth++ )
{
// Tag der Woche 0 (fuer Sonntag) - 6 (fuer Samstag)
$iDayOfWeek = date ( 'w', mktime ( 0, 0, 0, $iCurrentMonth, 1,
date ( 'Y' ) ) );
if ( ! ( $iCurrentMonth % 3 ) )
{
// Alle drei Monate eine </tr> einfügen.
$strBuildYear .= '</tr>';
}
if ( ! ( $iCurrentMonth % 3 ) && ( $iCurrentMonth % 12 ) )
{
// Alle 3 Monate, aber nicht nach dem
// Letzten Monat ein <tr> einfuegen.
$strBuildYear .= '<tr>';
}
}