PHP - Kalender Zeilen pro Monat

PHP, eine Programmiersprache die bei fast allen verwendet wird, doch noch immer benötige ich teilweise Funktionen die nicht direkt verfügbar sind. So etwa die Ansicht bei Kalendern. Wer kennt das denn nicht, ein Monat benötigt für die normale Kalenderansicht, so wie man es in Deutschland gewohnt ist 4 Zeilen, der Regelfall ist jedoch 5 und manche dann wie der 03.2009 gar 6 Zeilen. Dies ist natürlich für alle die einen Kalender mit floatenden Einheiten darstellen Mist, da es einfach nicht funktioniert und das Layout verreist ohne pauschal jeden einzelnen DIV-Container der einzelnen Kalender größer zu machen.

Genau das wollte ich auch umgehen. Größer machen ja, wenn es Monate mit 6 Zeilen gibt, ansonsten eben nicht. Nur das ist eine Sache von PHP die benötigten Zeilen erst einmal zu ermitteln. Zwar gibt es schon einige Funktionen im Internet dazu zu finden, doch alle lieferten mir bisher falsche Ergebnisse. Daher ist bei mir folgende Funktion entstanden die ich hier nun veröffentlichen möchte.

<?
function anzahl_kalenderzeilen($monat, $jahr)
{
$tage_im_monat = date(’t', mktime(0,0,0,$monat,1,$jahr));
$erster_tag = date(’w', mktime(0,0,0,$monat,1,$jahr));

// Wenn der Tag 0 ist, dann auf 1 setzen, da der Sonntag in DE der letzte Tag ist
if($erster_tag == 0) $erster_tag = 7;

// Berechne die Tage in der ersten Zeile
$anzahl_erste_zeile = 7 - ($erster_tag - 1);

// Berechne Resttage im Monat
$resttage = $tage_im_monat - $anzahl_erste_zeile;

// Berechne die noch zu verwendeten Zeilen im Monat
$zeilen = ceil($resttage / 7);

// Gesamtanzahl der Zeilen für den Monat
return $zeilen + 1;
}

echo anzahl_kalenderzeilen(3, 2009);
?>

Ähnliche Beiträge:

Schreibe einen Kommentar

Die Email-Adresse wird niemals öffentlich genannt. Mit * markierte Felder sind erforderlich.

*
*
Bitte nebenstehenden Code eingeben