Функция time.Unix
Функция time.Unix преобразует количество секунд, прошедших с 1 января 1970 года UTC, в объект time.Time. Первым параметром функция принимает количество секунд в виде int64, вторым - количество наносекунд в виде int64. Возвращаемое значение представляет момент времени с точностью до наносекунд.
Синтаксис
time.Unix(sec, nsec)
Пример с секундами
Давайте преобразуем 1000000 секунд с начала эпохи Unix в объект времени:
package main
import (
"fmt"
"time"
)
func main() {
res := time.Unix(1000000, 0)
fmt.Println(res)
}
Результат выполнения кода:
"1970-01-12 13:46:40 +0000 UTC"
Пример с секундами и наносекундами
Давайте добавим 500 наносекунд к 1000000 секундам:
package main
import (
"fmt"
"time"
)
func main() {
res := time.Unix(1000000, 500)
fmt.Println(res)
}
Результат выполнения кода:
"1970-01-12 13:46:40.0000005 +0000 UTC"
Пример с текущим временем
Давайте получим текущий объект времени с помощью time.Unix и функции time.Now:
package main
import (
"fmt"
"time"
)
func main() {
now := time.Now()
res := time.Unix(now.Unix(), 0)
fmt.Println(res)
}
Результат выполнения кода:
"2026-09-04 15:30:45.123456789 +0000 UTC"
Смотрите также
-
функцию
time.Now,
которая возвращает текущее локальное время -
функцию
time.Date,
которая создает объект времени из компонентов даты -
функцию
time.UnixMilli,
которая преобразует миллисекунды в объект времени -
метод
time.Time.Unix,
который возвращает количество секунд для объекта времени