Datum- und zeitrelevante Funktionen

Auch für das bestimmen der Zeit bietet dir PHP viele Funktionen. Einige dieser sind unabhängig vom verwendeten Betriebssystem, andere nicht. Um die Liste klein und allgemein nützlich zu halten, sind hier nur die systemunabhängigen Funktionen gelistet.

FunktionBeschreibung
string date(string $format [, int $timestamp = time() ] ) Gibt einen formatierten String anhand eines vorzugebenden Musters zurück. Dabei wird entweder der angegebene Timestamp oder die gegenwärtige lokale Zeit berücksichtigt, wenn kein Timestamp angegeben wird. Mit anderen Worten ausgedrückt: der Parameter Timestamp ist optional und falls dieser nicht angegeben wird, wird der Wert der Funktion time() angenommen. Details im Abschnitt date().
int time() Gibt den aktuellen Unix-Timestamp zurück.
string gmdate(string $format[,$timestamp=time()])Identisch zur Funktion date(), ausgenommen dass die zurückgegebene Zeitangabe Greenwich Mean Time (GMT) entspricht.
bool checkdate (int $month ,int $day , int $year)Prüft die Gültigkeit des übergebenen Datums. Ein Datum wird als gültig betrachtet, wenn jeder Parameter korrekt definiert wurde.
array getdate([int $timestamp=time()]) getdate() gibt ein assoziatives Array zurück, dessen Namen einfach herauszufinden sind. Weitere Infos im Abschnitt getdate().
mixed gettimeofday()Ermittelt die aktuelle Zeit ohne Datum und speichert diese in einem assoziativen Array.

Beispiele & Erklärungen

date()

Mit date() wird in der Regel gearbeitet, um ein systemunabhängiges Datum bzw. eine Zeit zu generieren. Das erste Argument von date() nimmt einige Kürzel entgegen, welche für bestimmte Daten stehen. Hier eine Liste der wichtigsten Kürzel:

Tageskürzel

Kürzel Beschreibung Beispiel
dTag des momentanen Monats, 2-stellig mit führender Null.01 bis 31
DWochentag, auf drei Buchstaben gekürzt.MON
jTag des momentanen Monats ohne führende Null.4

Wochenkürzel

Kürzel Beschreibung Beispiel
l(Kleines „L“) Ausgeschriebener momentaner Wochentag. „Montag“,„Dienstag“,usw…

Monatskürzel

Kürzel Beschreibung Beispiel
FMonat als ausgeschriebenes Wort.„January“,„February“,usw…
mMonat als Zahl, mit führender Null.01 bis 12
MMonatsname mit Zahl, drei Buchstaben.JAN
nMonat als Zahl, ohne führende Null.1 bis 12
tAnzahl der Tage des aktuellen Monats.28 bis 31

Jahreskürzel

Kürzel Beschreibung Beispiel
L Schaltjahr oder nicht.1 für Schaltjahr, 0 wenn nicht.
YVierstellige Jahreszahl.1999 oder 2003
yJahreszahl, zweistellig.42 oder 13

Uhrzeit

gStunden im 12-Stunden Format, ohne führenden Nullen.4 oder 10
GStunden im 24-Stunden Format, ohne führenden Nullen.3 oder 21
hStunden im 12-Stunden Format, mit führenden Nullen.03 oder 11
HStunden im 24-Stunden Format, mit führenden Nullen.04 oder 23
iMinuten mit führenden Nullen.09
sSekunden mit führenden Nullen.59
uMikrosekunden.521237

Beispiele

Zeit im normalen uns bekannten Format: Tag(des Monats).Monat(Führende Nullen).Jahr(Führende Nullen) - (24)Stunden:Minuten:Sekunden

<?php
echo date("d.m.Y - H:i:s");
?>

Ausgabe:

22.11.2013 - 13:03:41

getdate()

getdate() gibt ein assoziatives Array zurück, in dem datums- und zeitspezifische Daten enthalten sind.

ArraykeyBeschreibungBeispiel
„seconds“Numerische Repräsentation der Sekunden.Zwischen 0 und 59.
„minutes“Numerische Repräsentation der Minuten.Zwischen 0 und 59.
„hours“Numerische Repräsentation der Stunden.Zwischen 0 und 23.
„mday“Numerische Repräsentation des Monatstags.Zwischen 1 und 31.
„wday“Numerische Repräsentation des Wochentages.Zwischen 0(Sonntag) und 6(Montag).
„mon“Numerische Repräsentation des Monats.Zwischen 1 und 12.
„year“Eine vollständige numerische Repräsentation der Jahreszahl (vierstellig).1994 oder 2002.
„yday“Numerische Repräsentation des Tags des Jahres.Zwischen 0 und 365.
„weekday“Eine vollständig textuelle Repräsentation des Wochentags.Zwischen Sonntag und Sonnabend.
„month“Eine vollständig textuelle Repräsentation des Monats.Zwischen Januar und Dezember.

Beispiele:

Eine normale Europäische Darstellung des Datums und der Uhrzeit.

<?php
$gtdate=getdate();
echo $gtdate['mday'].".".$gtdate['mon'].".".$gtdate['year']." - ".$gtdate['hours'].":".$gtdate['minutes'].":".$gtdate['seconds'];
?>

Ausgabe

22.11.2013 - 13:03:42

gettimeofday()

Gibt, im Gegensatz zu date(), nur die Tageszeit in einem assoziativen Array zurück. Die Daten sind als Timestamp kodiert.

<?php
print_r(gettimeofday());
 
echo gettimeofday(true);
?>

Ausgabe:

Array
(
  [sec] => 1073504408
  [usec] => 238215
  [minuteswest] => 0
  [dsttime] => 1
)
1073504408.23910

Auf der nächsten Seite beschäftigen wir uns mit Funktionen zu Dateien.