Go では、タイム パッケージを使用してタイム ゾーン時間を処理します。 ストレージ: time.Now() を使用して現在時刻を取得し、time.In() を使用して指定されたタイム ゾーンの現地時間に変換し、変換します。文字列に。取得: time.Parse() を使用して文字列を time.Time 値に解析し、 time.In() を使用して目的のタイム ゾーンに変換します。
Golang では、タイムゾーンを含む時間データを処理するには、time
パッケージを使用する必要があります。このガイドでは、time
パッケージを使用して、タイム ゾーンのある時刻データを保存および取得する方法を実際の例とともに説明します。 time
包。本指南将演示如何使用 time
包存储和检索带有时区的时间数据,并配有实战案例。
存储时间数据
要存储带有时区的时间数据,可使用 time.Now
函数获取当前时间,然后使用 time.In
函数将其转换为指定时区的本地时间。例如:
// 获取当前时间 now := time.Now() // 转换为 UTC 时区 utcTime := now.In(time.UTC)
utcTime
现在包含 UTC 时区的当前时间。要存储此时间,可以将其转换为特定格式的字符串,例如 RFC3339 格式:
utcString := utcTime.Format(time.RFC3339)
检索时间数据
要检索存储的带有时区的时间数据,请使用 time.Parse
函数将字符串解析为 time.Time
值。务必指定与存储时间时的相同布局和时区:
storedTime := "2022-05-10T15:30:00Z" parsedTime, err := time.Parse(time.RFC3339, storedTime) if err != nil { // 处理错误 } // 转换为其他时区 localTime := parsedTime.In(time.Local)
localTime
時間データの保存
タイムゾーンを含む時間データを保存するには、time.Now
関数を使用して現在時刻を取得し、time.In code> 関数を使用して取得します。 指定されたタイムゾーンの現地時間に変換します。例: <p><pre class='brush:go;toolbar:false;'>// 获取用户出生日期作为字符串
birthdayString := "1990-01-01"
// 转换为指定时区的 time.Time 值
birthday, err := time.Parse("2006-01-02", birthdayString)
if err != nil {
// 处理错误
}
// 将出生日期存储到数据库中
// ...</pre></p>
<code>utcTime
には、UTC タイムゾーンの現在時刻が含まれるようになりました。この時間を保存するには、RFC3339 などの特定の形式の文字列に変換できます。 /code> 関数は、文字列を time.Time
値に解析します。時刻を保存するときと同じレイアウトとタイムゾーンを指定してください。 // 从数据库中检索出生日期 retrievedBirthday, err := time.Parse("2006-01-02", birthdayString) if err != nil { // 处理错误 } // 转换为本地时区 localBirthday := retrievedBirthday.In(time.Local) // 使用本地时区显示出生日期 // ...
localTime
には、ローカル タイムゾーンで取得された時刻が含まれるようになりました。
実際のケース
ユーザー プロファイルを保存するアプリケーションを考えてみましょう。プロファイルには、ユーザーの生年月日とタイムゾーンが含まれます。 🎜 生年月日の保存: 🎜🎜rrreee🎜🎜 生年月日の取得: 🎜🎜rrreee🎜 これらの手順に従うことで、Golang を使用してタイムゾーン付きの時刻データを簡単に保存および取得できます。 🎜以上がGolangでタイムゾーンを含む時間データを保存および取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。