Top

Arbeiten mit Zeit und Datum in PHP

Arbeiten mit Zeit und Datum in PHP

Eine sehr grundlegende und doch mächtige Funktion in PHP ist das Arbeiten mit Zeit.
In diesem Beitrag möchte ich dir deshalb einige Möglichkeiten mit dem Verarbeiten von Zeitparametern in PHP zeigen und einige Beispiele mit auf den Weg geben, die dir vielleicht behilflich sein könnten.

Grundlegendes

PHP arbeitet mit einem UNIX-Timestamp. Dieser ist für einen “normalen” Benutzer nicht lesbar, da er die derzeit verstrichenen Sekunden seit dem 01.01.1970 00:00:00 angibt. Zudem kommt es ja aufgrund der Zeitzonen auf unserer Erde auch sehr darauf an, wo man sich befindet… sprich man sollte auch die Zeitzone übermitteln um die korrekte Anzahl an Sekunden seit dem 01.01.1979 zu erhalten. Dies geht mit diesem Befehl:

Du erhälst klarerweise keine Ausgabe, da kein “echo”-Befehl hinterlegt ist. Möchtest du das Ergebnis auf deiner Seite sehen, so ergänze den Code:

Du kennst nun alle Sekunden, die seit dem 01.01.1979 00:00:00 vergangen sind. Ein Reload deiner Seite wird diese Aussage untermauern.

Du kannst natürlich die Variable $timestamp nennen, wie du möchtest. Wichtig ist eben nur, dass die Zeitzone vorher festgelegt wird, und der PHP-Befehl =time() angewandt wird.

Zeit und Datum formatieren

Damit nun eine korrekte Ausgabe für den Benutzer, oder auch für PHP-Skripe erfolgen kann, muss man diesen Timestamp natürlich formatieren. Dies funktioniert via dem Befehl

Du solltest nun so etwas wie 04.02.2018 – 09:03 (oder je nachdem welche Zeit und welches Datum bei dir gerade ist) erhalten.

Durch den Befehl $datum erzeugen wir eine neue Variable (wir können sie auch Dumdidum oder Butterblume nennen, ganz egal). Danach folgt der Befehl date, dieser teilt PHP mit, dass wir den UNIX-Timestamp von PHP gerne formatieren möchten. Darauf folgt die Art der Formatierung: “d.m.Y – H:i” als die da lautet: Tag.Monat.Jahr – Stunde:Minute und das wiederum ist gefolgt von der ursprünglichen Variable die alle Sekunden beinhaltet, genauer gesagt jene Variable die wir gerne formatiert haben wollen.

Verständlich soweit?

Du kannst nun natürlich die $timestamp Variable in jede mögliche Art formtieren. Ich präsentiere dir mal einige Beispiele an Hand des Timestamps 286532133

Format Funktion Beispiel Beispielcode Ausgabe aufgrund Timestamp 286532133
 d  Tag des Monats, zweistellig  05,17,29  date(“d”, $timestamp);  30
 j  Tag des Monats, einstellig  5,8,9  date(“j”, $timestamp);  30 (30 ist eben zweistellig)
 m  Monat des Jahres, nummerisch & zweistellig  05,09,12  date(“m”, $timestamp);  01
 n  Monat des Jahres, nummerisch & einstellig  5,9,12  date(“n”, $timestamp);  1
 y  Jahr, zweistellig  04,88  date(“y”, $timestamp);  79
 Y  Jahr, vierstellig  2004,1988  date(“Y”, $timestamp);  1979
 H  Stunden im 24h Format, zweistellig  09,03,15  date(“H”, $timestamp);  09
 G  Stunden im 24h Format, einstellig  9,3,15  date(“G”, $timestamp);  9
 i  Minuten, zweistellig  04,08,16  date(“i”, $timestamp);  15
 s  Sekunden, zweistellig  02,34,58  date(“s”, $timestamp);  33
 w  Wochentag in Zahlen (0 = Sonntag)  0,3,6  date(“s”, $timestamp);  2 (für Dienstag)

Nachdem du nun einige Parameter kennst, kannst du nun den UNIX-Zeitstempel so formatieren wie du ihn brauchst:

 

Gar nicht so schwer oder?

Ich habe bereits vor einiger Zeit dieses Thema behandelt und auch genauer erklärt, hier gehts zu den Artikeln:

Author Profile

RonnyDee
RonnyDee"Wenn du tust, was du immer getan hast, dann wirst du bekommen, was du immer bekommen hast"
Ich blogge hier über alle Themen mit denen ich in Berührung komme. Möchtest du wissen, warum ich so denke was ich schreibe, dann findest du unter "Über mich" mehr Informationen über mich und mein Leben
No Comments

Post a Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Skip to content