Format
{{ $t := "2023-01-27T23:44:58-08:00" }}
{{ $t = time.AsTime $t }}
{{ $format := "2 Jan 2006" }}
{{ $t.Format $format }} → 27 Jan 2023
可對任何 time.Time 值使用 Format 方法,包括以下四個預設的前置資料日期:
{{ $format := "2 Jan 2006" }}
{{ .Date.Format $format }}
{{ .PublishDate.Format $format }}
{{ .ExpiryDate.Format $format }}
{{ .Lastmod.Format $format }}
樣板字串
根據 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" |
如果要顯示 UTC 區域的 Z(而非偏移),請在佈局字串中將符號替換為 Z。
| 描述 | 有效組件 |
|---|---|
| 時區偏移 | "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。
範例
給定以下前置資料:
---
date: 2023-01-27T23:44:58-08:00
title: About time
---+++
date = 2023-01-27T23:44:58-08:00
title = 'About time'
+++{
"date": "2023-01-27T23:44:58-08:00",
"title": "About time"
}
以下範例是在 America/Los_Angeles 時區渲染的:
| 格式字串 | 結果 |
|---|---|
Monday, January 2, 2006 |
Friday, January 27, 2023 |
Mon Jan 2 2006 |
Fri Jan 27 2023 |
January 2006 |
January 2023 |
2006-01-02 |
2023-01-27 |
Monday |
Friday |
02 Jan 06 15:04 MST |
27 Jan 23 23:44 PST |
Mon, 02 Jan 2006 15:04:05 MST |
Fri, 27 Jan 2023 23:44:58 PST |
Mon, 02 Jan 2006 15:04:05 -0700 |
Fri, 27 Jan 2023 23:44:58 -0800 |
UTC 與本地時間
可將任意 time.Time 值轉換並格式化為協調世界時(UTC)或本地時間。
{{ $t := "2023-01-27T23:44:58-08:00" }}
{{ $t = time.AsTime $t }}
{{ $format := "2 Jan 2006 3:04:05 PM MST" }}
{{ $t.UTC.Format $format }} → 28 Jan 2023 7:44:58 AM UTC
{{ $t.Local.Format $format }} → 27 Jan 2023 11:44:58 PM PST
序數表示法
使用 humanize 函數將日期中的日數以序數格式呈現:
{{ $t := "2023-01-27T23:44:58-08:00" }}
{{ $t = time.AsTime $t }}
{{ humanize $t.Day }} of {{ $t.Format "January 2006" }} → 27th of January 2023