mktime
(PHP 3, PHP 4 )
mktime -- Gibt den UNIX-Timestamp/Zeitstempel für ein Datum zurück
Beschreibung:
int mktime ( [int Stunde [, int Minute [, int Sekunde [, int Monat [, int Tag
[, int Jahr [, int is_dst]]]]]]])
Warnung: Beachten sie die andersartige Anordnung der Argumente. Diese unterscheidet
sich von der Reihenfolge des UNIX-Befehls mktime(). Das ist eine häufige
Fehlerursache in Scripts.
Gibt den UNIX Timestamp/Zeitstempel an Hand der gegebenen Argumente zurück.
Der Zeitstempel ist ein long-integer-Wert, der die Anzahl der Sekunden zwischen
der UNIX Epoche (January 1 1970) und der angegebenen Zeit enthält.
Einzelne Argumente können von rechts nach links weggelassen werden. Sie
werden dann mit den Werten der lokalen Systemzeit bzw. des lokalen Systemdatums
ersetzt.
is_dst kann bei Sommerzeit auf 1 gesetzt werden. 0 bedeutet Winter-/Normalzeit,
-1 (Vorgabewert) heißt, dass nicht bekannt ist, ob Sommer- oder Winterzeit
herrscht. Falls nicht bekannt ist, ob Sommer- oder Winterzeit herrscht, versucht
PHP selbst dies herauszufinden. Das kann zu unerwarteten (aber dennoch korrekten)
Ergebnissen führen.
Anmerkung: is_dst wurde in 3.0.10. eingeführt.
mktime() ist hilfreich bei Datumsberechnungen und -überprüfungen,
da automatisch das korrekte Datum für ungültige Angaben berechnet
wird. So wird in den folgenden Beispielen immer die Zeichenkette "Jan-01-1998"
ausgegeben. Beispiel 1. mktime() Beispiel
<?php
echo date ("M-d-Y", mktime(0,0,0,12,32,1997));
echo date ("M-d-Y", mktime(0,0,0,13,1,1997));
echo date ("M-d-Y", mktime(0,0,0,1,1,1998));
echo date ("M-d-Y", mktime(0,0,0,1,1,98));
?>
Das Jahr darf zwei- oder vierstellig angegeben werden. Werte von 0 bis 69 stehen
dann für die Jahre 2000 bis 2069, und 70 bis 99 für die Jahre von
1970-1999 (auf Systemen, die time_t als 32Bit-Integer abbilden, was heutzutage
gebräuchlich ist, liegt der gültige Bereich für den Parameter
Jahr irgendwo zwischen 1901 und 2038).
Windows: Negative Timestampwerte werden von keiner uns bekannten Windowsversion
unterstützt. Aus diesem Grund ist der Gültigkeitsbereich für
Jahresangaben auf Werte zwischen 1970 und 2038 eingeschränkt.
Der letzte Tag eines gegebenen Monats kann als der Tag "0" des nächsten
Monats ausgedrückt werden (nicht als der Tag "-1"). Jedes der
folgenden Beispiele gibt die Zeichenkette "Letzter Tag im Feb. 2000 ist
der 29." zurück. Beispiel 2. Letzter Tag des nächsten Monats
<?php
$lastday = mktime (0,0,0,3,0,2000);
echo strftime ("Letzter Tag im Feb. 2000 ist der %d.", $lastday);
$lastday = mktime(0,0,0,4,-31,2000);
echo strftime ("Letzter Tag im Feb. 2000 ist der %d.", $lastday);
?>
Datumsangaben, bei denen das Jahr, der Monat und Tag gleich Null sind, werden
als ungültig angesehen (ansonsten als 30.11.1999, was nicht gewollt sein
kann).
|