Home  >  Article  >  Backend Development  >  How to convert time to timestamp in golang

How to convert time to timestamp in golang

PHPz
PHPzOriginal
2023-03-29 11:28:163842browse

Golang is a fast, concise and reliable programming language that is increasingly popular among developers because of its easy-to-learn, efficient and reliable features. In Golang, conversion between time and timestamp is a common operation. This article will detail how to convert time to timestamp.

The difference between time and timestamp

In computer systems, time is usually represented as a numerical value, the so-called timestamp. A timestamp is the number of seconds since some fixed date (usually January 1, 1970). For example, a Unix timestamp refers to the number of seconds since January 1, 1970 00:00:00 (GMT). In other words, a timestamp is an integer value that represents the total number of seconds since some fixed point in time.

In contrast, time refers to a specific date and time, such as January 2, 2006 15:04:05.6789101112.

In Golang, we can use the time package to handle conversion between time and timestamp.

Convert time to timestamp

In Golang, we can use the Unix function of the time package to convert time to timestamp. The Unix function accepts a value of type time.Time as a parameter and returns a Unix timestamp corresponding to that time (that is, the number of seconds since 00:00:00 on January 1, 1970). Below is a sample program that demonstrates how to convert time to timestamp:

package main

import (
    "fmt"
    "time"
)

func main() {
    // 获取当前时间
    now := time.Now()

    // 将时间转换为时间戳
    timestamp := now.Unix()

    // 输出时间戳
    fmt.Println(timestamp)
}

In the above code, we first use the time.Now() function to get the current time. Then, use now.Unix() to convert the time to a timestamp and store the result in the timestamp variable. Finally, we use the fmt.Println() function to output the timestamp to the console. Running the above program will result in an integer value representing the Unix timestamp of the current time. Here is a very simple example of converting time to timestamp.

Convert timestamp to time

If we already have a timestamp, then we need to convert it to time. In Golang, we can use the Unix function of the time package to convert timestamp to time. The Unix function accepts a timestamp of type int64 as a parameter and returns a value of type time.Time corresponding to the timestamp. Here is a sample program that demonstrates how to convert a timestamp to time:

package main

import (
    "fmt"
    "time"
)

func main() {
    // 定义一个时间戳
    timestamp := int64(1629674284)

    // 将时间戳转换为时间
    tm := time.Unix(timestamp, 0)

    // 输出时间
    fmt.Println(tm)
}

In the above code, we first define the timestamp as an int64 type value. Then, use time.Unix() to convert it to the corresponding time value. Finally, we use the fmt.Println() function to output the time to the console. Running the above program will get a string representing the time value corresponding to the timestamp.

Summary

In Golang, conversion between time and timestamp is a very common operation. This article explains how to convert a time to a timestamp using the time package, and how to convert a timestamp to a time using Unix functions. This knowledge will be useful when you need to convert between times and timestamps in your Golang programs.

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

Statement:
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