|
|
strtotime (PHP 3>= 3.0.12, PHP 4 , PHP 5) strtotime --
Wandelt ein beliebiges Datum (englisches Format) in einen
UNIX-Zeitstempel (Timestamp) um.
Beschreibungint strtotime ( string time [, int now])
Diese Funktion erwartet einen String mit einem Datum im
englischen Format und versucht diesen in einen Unix-Timestamp
umzuwandeln. Versucht wird dies relativ zu dem Timestamp, den Sie mit
now angeben. Fehlt diese Angabe, wird die aktuelle
Zeit angenommen. Schlägt die Umwandlung fehl, wird -1
zurückgegeben.
Die Funktion strtotime() verhält sich gemäß der Syntax von
GNU Date. Daher sollten Sie einen Blick in die GNU Manual Seite
Date Input Formats werfen.
Dort wird die gültige Syntax für time beschrieben.
Beispiel 1. strtotime()-Beispiele:
<?php echo strtotime("now"), "\n"; echo strtotime("10 September 2000"), "\n"; echo strtotime("+1 day"), "\n"; echo strtotime("+1 week"), "\n"; echo strtotime("+1 week 2 days 4 hours 2 seconds"), "\n"; echo strtotime("next Thursday"), "\n"; echo strtotime("last Monday"), "\n"; ?>
|
|
Beispiel 2. Fehlerüberprüfung
<?php $str = 'Nicht gut'; if (($timestamp = strtotime($str)) === -1) { echo "Der String ($str) ist falsch."; } else { echo "$str == " . date('l dS of F Y h:i:s A', $timestamp); } ?>
|
|
Anmerkung:
Der gültige Bereich eines Timestamp liegt typischerweise zwischen
Fri, 13 Dec 1901 20:45:54 GMT und Tue, 19 Jan 2038 03:14:07 GMT.
(Das sind die Datumsangaben, die dem minimalen und maximalen Wert eines
vorzeichenbehafteten 32-bit Integer entsprechen.) Zusätzlich
unterstützen nicht alle Plattformen negative Werte eines Timestamps,
deshalb könnte der Wertebereich eines Datums durch den Beginn der Unix
Epoche begrenzt sein. Das bedeutet, dass z.B. Zeitangaben vor dem
Jan 1, 1970 auf Windowssystemen, einigen
Linuxdisrtibutionen und einigen anderen Betriebssytemen nicht
funktionieren.
|