Layoutprobleme? - Styleswitcher!
![]() |
| | Themen-Optionen |
| | Nach oben #1 | ||
| Jann Hendrik Bekaan Registriert seit: 02.12.2004 Ort: Wildeshausen
Beiträge: 1.550
| Zeitformate, Datum und Co In diesem Tutorial wird euch die Möglichkeit geboten einen Einblick/Überblick in die Datums- und Zeit-Funktionen von PHP zu bekommen. Die Daten-Typen von mysql finden hier keine Erwähnung. Im Zusammenspiel von PHP mit der Datenbank mysql sollte man aber auf jeden Fall die Thematik vorher nochmal vertiefen. Inhalt:
time() Das wohl wichtigste, um mit Daten (plural Datum) zu rechnen ist der UNIX-timestamp. Gezählt werden hierbei die Sekunden, die seit dem 01.01.1970 00:00h vergangen sind. Der Vorteil dieses festen Bezuges liegt darin, dass man nun einen definierten integer-Wert hat, mit dem sich gut rechnen läßt. Doch dazu später mehr. Der aktuelle Wert läßt sich mittels time() ausgeben: PHP-Code: Selbstverständlich ist es möglich auch den timestamp eines anderen Zeitpunktes zu ermitteln. Dabei hilft die Funktion mktime. PHP-Code: Anmerkung: Wer in das PHP-Handbuch schaut, der kann feststellen, dass man der Funktion als weiteren Parameter noch die Einstellung für Sommer- und Winterzeit angeben kann. Des weiteren ist es möglich von links nach rechts einzelne Werte weglassen kann. Dann würden diese automatisch mit dem aktuellen Wert angenommen. Falsche Werte werden korrigiert, so dass es möglich ist, mit den Angaben zu rechnen. Bekanntlich gibt es den 45.12.2006 nicht: PHP-Code: Hinweis: 1 Minute = 60 Sekunden 1 Stunde = 60*60 Sekunden (3600) 1 Tag = 60*60*24 Sekunden (86.000) Beispiel: 25 Tage = 60*60*24*25 = 2160000 Sekunden Wie man nun aus den 2160000 Sekunden einen Wert in Tagen bekommt? Nun einfach durch 60*60*24 Teilen und das Ergebniss ggf. noch runden. checkdate Um zu überprüfen, ob ein Datum existiert (man denke an den 30.02.) stellt PHP die Funktion checkdate zur Verfügung, welche wie folgt genutzt werden kann: PHP-Code: date Die Funktion date() dürfte die wohl am meisten genutzte Datumsfunktion sein. Hier lohnt sich auf jeden Fall mal ein Blick ins Handbuch: date date() erwartet als Parameter einen string. Der String definiert die Formatierung der Ausgabe. Dafür sind einige Zeichen definiert. PHP-Code: Am besten ist es, einfach mal ein paar verschiedene Werte auszuprobieren. Das schöne an der date-Funktion ist, dass mal optional als zweiten Parameter einen UNIX-timestamp angeben kann. Dann wird nicht der aktuelle Wert in der gewünschten Form ausgegeben, sondern der des timestamps. PHP-Code: microtime funktioniert ähnlich zu time, jedoch werden hier auch Mikrosekunden zurückgegeben. Beispiel: PHP-Code: Code: 0.04687700 1163424951 Um diese nun von einander zu trennen kann man die Funktion explode nutzen: PHP-Code: Leichter geht das übrigens seit PHP5, denn dort kann man der Funktion einen Parameter übergeben: PHP-Code: Im manual steht, wie es geht, wenn man mit PHP5 die Skriptlaufzeit messen will: PHP-Code: easter_date Die Funktion date() kennt ihr ja bereits. Der Funktion kann man einen Zeitpunkt übergeben, um diesen im gewünschten Format auszugeben. Ein interessanter Zeitpunkt ist der Tag des Ostersonntags. Logischerweise findet der stets an einem Sonntag statt. Um genau zu sein, es ist seit dem Jahr 325 als der erste Sonntag nach dem ersten Vollmond des Frühlings definiert. Das Benutzen von astronomischen Tafeln wurde durch die Osterformel von C.F. Gauß vom Jahre 1800 überflüssig. Auf dieser Osterformel basieert auch die Funktion easter_date(). Folgendes Skript PHP-Code: PHP-Code: PHP-Code: Code: Ostersonntag 2010: 04.04.2010 Karfreitag: 2 Tage abziehen Aschermittwoch: 46 Tage abziehen Christi Himmelfahrt: 39 Tage addieren Pfingsten 49 Tage später Fronleichnam 60 Tage später Pfingstsonntag kann man nun also so bestimmen: PHP-Code: Muttertag ist der zweite Sonntag im Mai: PHP-Code: PHP-Code: Buß- und Bettag ist 11 Tage vor dem 1. Advent. Also wie eben - nur 11 Tage im mktime abziehen: PHP-Code: easter_days Manchmal reicht einem, wenn man weiß, wieviele Tage zwischen dem 21. März und dem Ostersonntag liegen. Da hilft die Funktion easter_days(). Beispiel: PHP-Code: date_sunrise Mit dieser Funktion ist es möglich (ab PHP5) den Zeitpunkt des Sonnenaufganges zu berechnen. Der Funktion werden lediglich ein paar notwendige Ortsangaben mitgegegben, damit die Uhrzeit auch stimmt! Schließlich gilt für München eine andere Zeit als für Paris! Für das Beispiel Bremen gilt: Latitude: 53.04 North Longitude: 8,48 Osten Zenith ~= 90 offset: +1 GMT PHP-Code: Code: Sonnenaufgang in Bremen am: 13.11.2006 um 07:51 Zitat:
date_sunset Auf die gleiche Weise lässt sich auch der Zeitpunkt des Sonnenunterganges bestimmen: PHP-Code: setlocale hier lohnt auf jeden Fall ein Blick ins Handbuch! Mit dieser Funktion werden lokale Informationen gesetzt. Das kann zB die Zeit betreffen. PHP-Code: strftime bei dieser Funktion lohnt sich ein Blick ins Handbuch: Die Werte nach dem % sind definiert. Eine Liste ist im Handbuch aufgeführt. So ergibt folgender Code: PHP-Code: Wochentag, Tag im Monat, Monat, Jahr. In diesem Fall den 22.12.1978. Anmerkung: Zitat:
Jetzt solltet Ihr eigentlich in der Lage sein, Datums- und Zeitfunktionen bei PHP anzuwenden. Die verwendeten Funktionen findet Ihr alle im PHP-Manual. Weitere - hier nicht behandelte - Zeitfunktionen sind:
Solltet Ihr Fragen zu dem Tutorial haben, so schreibt bitte einen Beitrag im PHP-Forum mit einem Verweis auf dieses Tutorial. Danke. Ich hoffe, dass ich Euch hier etwas weiterhelfen konnte. Grüße Jann Hendrik Geändert von Jann Hendrik (26.05.2007 um 12:14 Uhr). | ||
| | |
![]() |
| Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1) | |
| Themen-Optionen | |
| |
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| [PHP] Mit PHP dynamisch einen RSS-Feed aktualisieren | Jann Hendrik | Tutorials | 0 | 13.03.2007 09:52 |
| [TUTORIAL-Frage] Zeitformate, Datum und Co | Byrel | PHP-Programmierung | 8 | 11.12.2006 19:26 |
| [PHP] dynamischer Verzeichnisschutz mit .htaccess | Jann Hendrik | Tutorials | 0 | 21.03.2006 15:27 |
| Eigenes Datum | Maybe | PHP-Programmierung | 8 | 19.02.2006 18:59 |
| [PHP] Gästebuch auf Textdatei basierend | Jann Hendrik | Tutorials | 4 | 11.01.2006 07:50 |
Alle Zeitangaben in WEZ +2. Es ist jetzt 00:36 Uhr.
Nach oben






