Константа time.Layout
Константа time.Layout представляет собой стандартный
шаблон форматирования даты и времени в языке Go. Она
используется в функциях Format и Parse
для преобразования времени в строку и обратно.
Особенность форматирования в Go заключается в том,
что нужно использовать не произвольные символы, а
конкретную дату для указания формата - "Mon Jan 2 15:04:05 MST 2006".
Константа time.Layout содержит именно этот
шаблон и служит основой для создания собственных
форматов. Ее значение: "01/02 03:04:05PM '06 -0700".
Синтаксис
const Layout = "01/02 03:04:05PM '06 -0700"
Пример
Давайте отформатируем текущую дату и время
с использованием константы time.Layout:
package main
import (
"fmt"
"time"
)
func main() {
now := time.Now()
res := now.Format(time.Layout)
fmt.Println(res)
}
Результат выполнения кода:
"04/09 10:15:30PM '26 +0300"
Пример
Парсинг строки времени с использованием константы
time.Layout:
package main
import (
"fmt"
"time"
)
func main() {
layout := time.Layout
timeStr := "12/25 11:45:30PM '23 -0500"
t, err := time.Parse(layout, timeStr)
if err != nil {
fmt.Println(err)
return
}
fmt.Println(t)
}
Результат выполнения кода:
"2023-12-25 23:45:30 -0500 EST"
Пример
Создание собственного формата на основе константы
time.Layout путем замены его компонентов:
package main
import (
"fmt"
"time"
)
func main() {
now := time.Now()
// Создаем свой формат на основе Layout
customLayout := "02/01/2006 15:04:05"
res := now.Format(customLayout)
fmt.Println(res)
}
Результат выполнения кода:
"04/09/2026 22:15:30"
Смотрите также
-
константу
time.ANSIC,
которая предоставляет стандартный формат ANSI C -
константу
time.RFC3339,
которая задает формат по стандарту RFC 3339 -
константу
time.Kitchen,
которая представляет формат времени в стиле кухонных часов -
метод
time.Time.Format,
который форматирует время согласно указанному шаблону