2010-12-07 9 views
0

So habe ich eine Texteingabe bekommt, die in diesem Format Datum & Zeit die bekommen:php - Zeichenfolge Datum Parsen, um sicherzustellen, Zeitzonen korrekt sind

09/06/2010 21:08 (Bedeutung September)

I date_parse_from_format('m/d/Y H:i', $stringtoparse); bin mit (jemand sagt mir, wenn ich hier falsch bin)

Diese Funktion gibt ein assoziatives Array mit Indizes wie "Jahr" oder "Tag" oder "Stunde" zurück.

Der ursprüngliche Text, der gesendet wurde, muss so behandelt werden, als befände er sich in einer bestimmten Zeitzone. Es wird immer EST sein, aber ich habe nur Probleme herauszufinden, wie ich mich für die Zeitzone einstellen soll.

Im Grunde gibt es am Ende zwei Datumsangaben in der Datenbank (eine Startzeit und eine Endzeit). Ich muss wissen, ob die aktuelle Zeit zwischen diesen beiden Zeiten liegt. Ich weiß, sobald ich einen letzten Zeitstempel habe kann ich einfach verwenden:

$startdate < now() < $enddate oder so ähnlich (natürlich muss jetzt im Format von "EST" sein, aber ich muss sicher sein, Zeitzonen sind zuerst richtig. Wie machen ich mache das?

Antwort

1

Sie sollten alle Daten in einzelne Zeitzone speichern, haben wir uns entschieden, UTC für DB Speicherung und konvertieren es Zeitzone des Benutzers auf machen.

Sie nicht falsch sind, aber ich DateTime::createFromFormat stattdessen empfehlen.

Verwandte Themen