今日のローカル開始時刻を取得
目標は、正しいタイムゾーンが含まれていることを確認して、ローカルな一日の開始時刻オブジェクトを取得することです。
カスタム関数の利用
コード スニペットで提案されている最初の解決策は、年、月、日のコンポーネントから日付を再構築します。ただし、より効率的なアプローチは、time パッケージによって提供される Date 関数を利用することです。
func Bod(t time.Time) time.Time { return time.Date(t.Year(), t.Month(), t.Day(), 0, 0, 0, 0, t.Location()) }
Truncate メソッドの欠陥
受け入れられた回答では、使用することを提案しています。 Truncate 関数では、要件を満たしていません。この関数は UTC 時間で動作し、誤って 1 日が固定の 24 時間であると想定し、シカゴで観察された潜在的な偏差を見逃しています。
以上がGo でローカルな 1 日のスタートを切る方法: Truncate は適切なツールですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。