Free Trial

Safari Books Online is a digital library providing on-demand subscription access to thousands of learning resources.

Share this Page URL
Help

Kapitel 21: Datum und Uhrzeit > 21.6 Kalenderfunktionen - Pg. 553

Kalenderfunktionen 21.6 Kalenderfunktionen PHP verfügt über mehrere Funktionen zur Konvertierung zwischen ver- schiedenen Kalendern. Die wichtigsten Kalender für die tägliche Arbeit sind der gregorianische und der julianische Kalender sowie die julianische Tageszählung. Die meisten westlichen Länder verwenden den gregorianischen Kalender. Dem gregorianischen Datum 15. Oktober 1582 entspricht im julianischen Kalender der 5. Oktober 1582. Vor diesem Datum wurde allgemein der julia- nische Kalender benutzt. Seitdem haben die verschiedenen Länder zu unterschiedlichen Zeitpunkten auf den gregorianischen Kalender umgestellt (einige von ihnen erst Anfang des zwanzigsten Jahrhunderts). Auch wenn Sie vielleicht schon von diesen beiden Kalendern gehört haben, ist Ihnen die julianische Tageszählung vielleicht noch unbekannt. Sie ähnelt in mancher Hinsicht einem Unix-Zeitstempel, denn sie zählt die Anzahl der Tage seit einem Datum, das ungefähr im Jahr 4000 v.Chr. liegt. Für sich betrachtet ist sie nicht sonderlich sinnvoll, aber zur Konvertierung zwi- schen Datumsformaten sehr nützlich. Um ein Format in ein anderes zu kon- vertieren, wandeln Sie es erst in eine julianische Tageszahl und dann in das Format des gewünschten Kalenders um. Wenn Sie diese Funktionen unter Unix einsetzen wollen, müssen Sie zuerst mit --enable-calendar die Kalendererweiterung in PHP kompilieren. Bei Windows sind diese Funktionen bereits Teil der Standardinstallation. Um einen Eindruck von diesen Funktionen zu bekommen, betrachten Sie die Prototypen, die Sie verwenden würden, um Daten vom gregorianischen in den julianischen Kalender zu konvertieren: int gregoriantojd (int month , int day , int year ) string jdtojulian(int julianday ) 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 Um ein Datum zu konvertieren, müssten Sie die beiden folgenden Funk- tionen aufrufen: $jd = gregoriantojd (9, 18, 1582); echo jdtojulian($jd); Dieser Aufruf gibt das julianische Datum im Format MM/TT/JJJJ aus. Von diesen Funktionen gibt es auch Varianten für die Umrechnung zwi- schen gregorianischem, julianischem, französischem und jüdischem Kalen- der und Unix-Zeitstempeln. 553