Home > Backend Development > Golang > How to convert timestamp to time format in golang

How to convert timestamp to time format in golang

PHPz
Release: 2023-04-24 15:03:10
Original
7216 people have browsed it

Golang is a strongly typed programming language, especially suitable for writing network services and high-concurrency applications. When writing applications, you often need to deal with time-related data, such as timestamps. Golang provides time conversion functions that can convert timestamps into time format.

1. Timestamp

The timestamp refers to the number of milliseconds or seconds from 0:00:00 on January 1, 1970 AD (UTC) to the current time. This time representation method is widely used due to its relative fixity and global standard.

In Golang, timestamps can be divided into two types, one is Unix timestamp and the other is UnixNano timestamp.

Unix timestamp refers to the number of seconds that have elapsed since 0:00:00 on January 1, 1970 (UTC). In Golang, you can use the time.Unix function to convert Unix timestamp to time format.

UnixNano timestamp refers to the number of nanoseconds that have elapsed since 0:00:00 on January 1, 1970 (UTC). In Golang, you can use the time.UnixNano function to convert UnixNano timestamps to time format.

2. Time conversion

In Golang, you can use the function provided by the time package to convert the timestamp into time format. Commonly used functions include the following:

  1. time.Unix

time.Unix function can convert Unix timestamp to time format. Its parameter t is the Unix timestamp in seconds, and the parameter nano is the nanosecond part.

Usage example:

package main

import (
    "fmt"
    "time"
)

func main() {
    timestamp := int64(1635593048) // Unix时间戳
    t := time.Unix(timestamp, 0)
    fmt.Println(t)
}
Copy after login

Output result:

2021-10-30 22:30:48 +0800 CST
Copy after login
  1. time.UnixNano

time.UnixNano function can convert UnixNano timestamp Convert to time format. Its parameter t is the UnixNano timestamp in nanoseconds.

Usage example:

package main

import (
    "fmt"
    "time"
)

func main() {
    timestamp := int64(1635593048644816891) // UnixNano时间戳
    t := time.Unix(0, timestamp)
    fmt.Println(t)
}
Copy after login

Output result:

2021-10-30 22:30:48.644816891 +0800 CST
Copy after login
  1. time.Parse

The time.Parse function can convert a time string into Parsed into time format. Its parameter layout is the format of a time string. The parameter value is a time string.

Usage example:

package main

import (
    "fmt"
    "time"
)

func main() {
    t, _ := time.Parse("2006-01-02 15:04:05", "2021-10-30 22:30:48")
    fmt.Println(t.Unix())
}
Copy after login

Output result:

1635593048
Copy after login
  1. time.Format

time.Format function can format time into Time string. Its parameter layout is the format of a time string.

Usage example:

package main

import (
    "fmt"
    "time"
)

func main() {
    t := time.Now()
    fmt.Println(t.Format("2006-01-02 15:04:05"))
}
Copy after login

Output result:

2021-11-03 11:22:33
Copy after login

3. Summary

Time stamp is a commonly used time representation method and can represent absolute time. Golang provides a wealth of time processing functions, which can convert timestamps into time formats, and perform time calculation, comparison, formatting and other operations. In actual applications, developers can flexibly use time processing functions according to needs to improve development efficiency.

The above is the detailed content of How to convert timestamp to time format in golang. For more information, please follow other related articles on the PHP Chinese website!

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template