1

私はこの質問について多くのことを読みましたが、思ったほど単純ではないと思います。

私たちは独自の CMS を構築しており、多くの調査を行った後、すべての日付と時刻を UTC で保存することにしました (INT フィールドの UNIX タイムスタンプまたは DATETIME フィールドのいずれかとして)。

時間オフセットなどの処理方法に完全に精通しています。

すべての日付/時刻の値を UTC として保存し、これらの値を表示する時点でこれらの値を特定のタイムゾーンに変換しているため:

  1. ウェブサイトのタイムゾーンを変更すると表示値が変わるのは CMS ソフトウェアではよくあることですか? たとえば、オフセットが +10 で、表示される日付が 2011 年 3 月 1 日の 14:15 であるとします。オフセットを -10 に変更すると、その記事に表示される日時は 2011 年 2 月 28 日の 18:15 に変更されますか?

  2. これが正しい場合、タイムゾーンの設定が夏時間に従うとどうなりますか? 確かに、夏時間のためにタイムゾーンのオフセットが変更されると、以前に公開されたすべての記事の日付と時刻も変更され、日または月も移動する可能性がありますか? これがどのように魅力的な機能になるのか、私にはわかりません。

本質的に、私は、2 番目の影響を与えずに日付と時刻のタイム ゾーンの変更を有効にする方法を尋ねています。それとも、全体が間違っていますか?

よろしくお願いします!

4

1 に答える 1

1

UTCに従ってすべての日時スタンプを保存することをお勧めします。

ユーザーに日付または時刻を表示するたびに、管理者が構成できるWebサイトのグローバルタイムゾーン設定を使用するか、現在のユーザーのタイムゾーンを確認して、コンテキストを決定します。このロジックは、日付またはタイムスタンプが何を参照しているかに関して、何が最も適切かを決定するのはあなた次第です。

これは、中国に顧客がいる英国に倉庫を持つクライアントのために独自のCMSを開発するときに使用したソリューションです。

于 2012-02-01T11:47:37.683 に答える