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?

War es hilfreich?

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.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top