Konvertieren von TIMESTAMP in der Unix-Zeit in PHP?
-
27-09-2019 - |
Frage
Zur Zeit speichere ich die Zeit in meiner Datenbank wie folgt: 2010-05-17 19:13:37
Ich brauche aber zwei Mal zu vergleichen, und ich glaube, es wäre einfacher, zu tun, wenn es ein Zeitstempel Unix ist wie 1274119041
. (Diese beiden Zeiten sind unterschiedlich)
Wie kann ich den Zeitstempel auf Unix-Zeitstempel-Format konvertieren? Gibt es eine einfache PHP-Funktion für das?
Lösung
Sie suchen strtotime ()
Andere Tipps
Sie wollen strtotime :
print strtotime('2010-05-17 19:13:37'); // => 1274123617
Wie Sie einen unixtimestamp:
$unixTimestamp = time();
Konvertieren von Datetime-Format mysql:
$mysqlTimestamp = date("Y-m-d H:i:s", $unixTimestamp);
Erste einig MySQL-Zeitstempel:
$mysqlTimestamp = '2013-01-10 12:13:37';
es zu einem unixtimestamp Converting:
$unixTimestamp = strtotime('2010-05-17 19:13:37');
... es mit einer oder einer Reihe von Zeiten zu vergleichen, um zu sehen, ob der Benutzer eine realistische Zeit eingegeben:
if($unixTimestamp > strtotime("1999-12-15") && $unixTimestamp < strtotime("2025-12-15"))
{...}
Unix-Zeitstempel sind auch sicherer. Sie können Folgendes überprüfen tun, wenn eine URL übergebene Variable gültig ist, vor (zum Beispiel) die bisherige Kontrollprüfung:
if(ctype_digit($_GET["UpdateTimestamp"]))
{...}
Wenn Sie MySQL als Datenbank verwenden, können sie Datumsfelder zurückkehren als Unix-Zeitstempel mit UNIX_TIMESTAMP :
SELECT UNIX_TIMESTAMP(my_datetime_field)
Sie können sie auch auf der PHP-Seite tun mit strtotime :
strtotime('2010-05-17 19:13:37');
Wenn Sie die Zeit, in der Datenbank zu speichern, warum Sie die Datenbank auch den Zeitstempel Unix geben Sie lassen Sie sich nicht davon? finden Sie unter UNIX_TIMESTAMP(date)
zB.
SELECT UNIX_TIMESTAMP(date) ...;
Datenbanken können auch Datum und Zeitvergleiche und Arithmetik.