time.Format
语法
time.Format LAYOUT INPUT
返回
string
别名
dateFormat
将 time.Format
函数与 time.Time
值一起使用
{{ $t := time.AsTime "2023-10-15T13:18:50-07:00" }}
{{ time.Format "2 Jan 2006" $t }} → 15 Oct 2023
或将 time.Format
与日期/时间值的可解析字符串表示形式一起使用
{{ $t := "15 Oct 2023" }}
{{ time.Format "January 2, 2006" $t }} → October 15, 2023
可解析字符串表示形式的示例
格式 | 时区 |
---|---|
2023-10-15T13:18:50-07:00 |
美国/洛杉矶 |
2023-10-15T13:18:50-0700 |
美国/洛杉矶 |
2023-10-15T13:18:50Z |
Etc/UTC |
2023-10-15T13:18:50 |
默认值为 Etc/UTC |
2023-10-15 |
默认值为 Etc/UTC |
2023年10月15日 |
默认值为 Etc/UTC |
最后三个示例不是完全限定的,并且默认为 Etc/UTC
时区。
要覆盖默认时区,请在站点配置中设置 timeZone
。确定时区的优先级顺序是
- 日期/时间字符串中的时区偏移量
- 在站点配置中指定的时区
Etc/UTC
时区
布局字符串
根据 Go 的参考时间格式化 time.Time
值
Mon Jan 2 15:04:05 MST 2006
使用这些组件创建布局字符串
描述 | 有效组件 |
---|---|
年份 | "2006" "06" |
月份 | "Jan" "January" "01" "1" |
星期几 | "Mon" "Monday" |
月份中的天 | "2" "_2" "02" |
一年中的天 | "__2" "002" |
小时 | "15" "3" "03" |
分钟 | "4" "04" |
秒 | "5" "05" |
AM/PM 标记 | "PM" |
时区偏移量 | "-0700" "-07:00" "-07" "-070000" "-07:00:00" |
将布局字符串中的符号替换为 Z,以打印 Z 而不是 UTC 区域的偏移量。
描述 | 有效组件 |
---|---|
时区偏移量 | "Z0700" "Z07:00" "Z07" "Z070000" "Z07:00:00" |
{{ $t := "2023-01-27T23:44:58-08:00" }}
{{ $t = time.AsTime $t }}
{{ $t = $t.Format "Jan 02, 2006 3:04 PM Z07:00" }}
{{ $t }} → Jan 27, 2023 11:44 PM -08:00
诸如 PST
和 CET
之类的字符串不是时区。它们是时区缩写。
诸如 -07:00
和 +01:00
之类的字符串不是时区。它们是时区偏移量。
时区是具有相同当地时间的地理区域。例如,由 PST
和 PDT
缩写的时区(取决于夏令时)是 America/Los_Angeles
。
本地化
使用 time.Format
函数将 time.Time
值本地化为当前语言和地区。
使用如上所述的布局字符串,或使用下面的令牌之一。例如
{{ .Date | time.Format ":date_medium" }} → Jan 27, 2023
本地化为 en-US
令牌 | 结果 |
---|---|
:date_full |
2023年1月27日,星期五 |
:date_long |
2023年1月27日 |
:date_medium |
2023年1月27日 |
:date_short |
1/27/23 |
:time_full |
太平洋标准时间晚上 11:44:58 |
:time_long |
晚上 11:44:58 PST |
:time_medium |
晚上 11:44:58 |
:time_short |
晚上 11:44 |
本地化为 de-DE
令牌 | 结果 |
---|---|
:date_full |
2023年1月27日,星期五 |
:date_long |
2023年1月27日 |
:date_medium |
27.01.2023 |
:date_short |
27.01.23 |
:time_full |
晚上 23:44:58 北美西海岸标准时间 |
:time_long |
晚上 23:44:58 PST |
:time_medium |
23:44:58 |
:time_short |
23:44 |