time.AsTime
概覽
Hugo 提供了用於格式化、在地化、解析、比較及操作日期/時間值的函式與方法。在對日期/時間值的字串表示進行任何操作之前,您必須先使用 time.AsTime
函式將它們轉換為 time.Time
值。
{{ $t := "2023-10-15T13:18:50-07:00" }}
{{ time.AsTime $t }} → 2023-10-15 13:18:50 -0700 PDT (time.Time)
可解析的字串
如上所示,第一個參數必須是可解析的日期/時間值字串表示。例如:
格式 | 時區 |
---|---|
2023-10-15T13:18:50-07:00 |
America/Los_Angeles |
2023-10-15T13:18:50-0700 |
America/Los_Angeles |
2023-10-15T13:18:50Z |
Etc/UTC |
2023-10-15T13:18:50 |
預設為 Etc/UTC |
2023-10-15 |
預設為 Etc/UTC |
15 Oct 2023 |
預設為 Etc/UTC |
最後三個範例並未完全指定,預設會指向 Etc/UTC
時區。
若要覆寫預設時區,可以在站點設定中設定 timeZone
,或提供第二個參數給 time.AsTime
函式。例如:
{{ time.AsTime "15 Oct 2023" "America/Los_Angeles" }}
有效的時區列表可能取決於系統,但應包括 UTC
、Local
或 IANA 時區資料庫 中的任何位置。
決定時區的優先順序如下:
- 日期/時間字串中的時區偏移
- 作為第二個參數提供給
time.AsTime
函式的時區 - 在站點設定中指定的時區
Etc/UTC
時區