9 Stimmen

Soll DateTime in UTC oder lokaler Zeit (des Servers) auf einer weltweit zugänglichen Website gespeichert werden?

Wie wirkt sich ein System wie ein Einkaufswagen aus, bei dem sich ein Kunde (Käufer) in einer Zeitzone und der andere (Verkäufer) in einer anderen Zeitzone befindet und das Datum an einem Ende geändert wird, so dass die Berichtsdaten für einen Kunden, der gekauft hat, anders sind als die des anderen?

12voto

Jon Skeet Punkte 1325502

Wenn es sich um einen Zeitpunkt handelt, sollten Sie auf jeden Fall UTC verwenden. Das scheint in diesem speziellen Fall die richtige Wahl zu sein.

Sur 幾つか In anderen Fällen möchten Sie die Ortszeit speichern - zum Beispiel, um einen Alarm darzustellen, der um 8 Uhr morgens in der Ortszeit ausgelöst werden soll, unabhängig davon, in welcher Zeitzone sich der Benutzer befindet. Dies ist in der Regel für Kalenderanwendungen nützlich... und Sie speichern hier keinen einzelnen Zeitpunkt.

Ein konkretes Beispiel dafür, warum es sich lohnt, Zeitpunkte in UTC zu speichern, ist die Tatsache, dass lokale Zeiten aufgrund von Sommerzeitumstellungen mehrdeutig sein können - wenn die Uhr von 2 Uhr auf 1 Uhr zurückgestellt wird, gibt es zweimal eine lokale Zeit von 1:30 Uhr. In UTC gibt es diese Mehrdeutigkeit nicht.

4voto

Chris Jester-Young Punkte 212385

UTC für immer! Im Ernst, das bedeutet, dass Sie sich in Ihrem Modell nicht mehr mit Sommerzeit- (oder Orts-) Anpassungen herumschlagen müssen, sondern nur noch in der Ansicht.

1voto

Robin Day Punkte 97662

Das größte "Pro" der Verwendung von UTC ist, dass Sie, wenn Sie sich dafür entscheiden, immer sicher sein können, dass die Daten auf diese Weise gespeichert werden und Sie nie an sich selbst zweifeln müssen. Das spart eine Menge Ärger.

1voto

cjjer Punkte 53

Ich denke, gespeichert ist nicht das größte Problem, das wichtigste ist, wenn es an einen Client wie WEBSITE, API ... usw. gesendet wird, müssen Sie als UTC+0 Format senden, vielleicht ist long type besser?

1voto

dbasnett Punkte 10431

UTC. Ich kenne einen Benutzer in einem anderen Forum, der die Ortszeit des Endbenutzer-PCs speicherte, und einige der Benutzer beschlossen, dass sie die automatische Umstellung auf die Sommerzeit nicht brauchen. Sie sind jetzt sehr traurig.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X