Home > Article > Backend Development > How to get timestamp in golang
Golang method to get timestamp: 1. Use the Now() function in the time package to get the current time, and then use the Unix() function to convert it to a timestamp; 2. Use the Parse() in the time package ) function to convert a string type time into a timestamp; 3. Use the Unix() function in the time package to convert the specified year, month, day, hour, minute, and second into a timestamp.
The operating system for this tutorial: Windows 10 system, Go 1.20.1 version, DELL G3 computer.
In Golang, we can use the time package to get the timestamp. A timestamp is a number that represents a specific time, usually the number of seconds or milliseconds from a specific point in time. In Golang, timestamps are usually measured in nanoseconds.
1. To get the timestamp of the current time, we can use the Now() function in the time package to get the current time, and then use the Unix() function to convert it to a timestamp. The sample code is as follows:
package main import ( "fmt" "time" ) func main() { // 获取当前时间 now := time.Now() // 转换为时间戳(秒数) timestamp := now.Unix() fmt.Println("当前时间戳(秒数):", timestamp) // 转换为时间戳(纳秒数) nanosecondTimestamp := now.UnixNano() fmt.Println("当前时间戳(纳秒数):", nanosecondTimestamp) }
In the above example, we first use the time.Now() function to get the current time, and then use the Unix() and UnixNano() functions respectively to convert it to a timestamp (seconds) and nanoseconds).
2. In addition to getting the timestamp of the current time, we can also use the Parse() function in the time package to convert the string type time into a timestamp. The sample code is as follows:
package main import ( "fmt" "time" ) func main() { // 定义一个时间字符串 timeStr := "2022-01-01 12:00:00" // 将时间字符串转换为时间对象 t, err := time.Parse("2006-01-02 15:04:05", timeStr) if err != nil { fmt.Println("时间格式错误:", err) return } // 将时间对象转换为时间戳(秒数) timestamp := t.Unix() fmt.Println("时间字符串对应的时间戳(秒数):", timestamp) // 将时间对象转换为时间戳(纳秒数) nanosecondTimestamp := t.UnixNano() fmt.Println("时间字符串对应的时间戳(纳秒数):", nanosecondTimestamp) }
In the above example, we first define a time string, then use the time.Parse() function to convert it into a time object, and finally use Unix() and UnixNano() Function converts a time object into a timestamp.
3. In addition to the above methods, we can also use the Unix() function in the time package to convert the specified year, month, day, hour, minute, and second into a timestamp. The sample code is as follows:
package main import ( "fmt" "time" ) func main() { // 定义指定时间 specifiedTime := time.Date(2022, time.January, 1, 12, 0, 0, 0, time.UTC) // 将指定时间转换为时间戳(秒数) timestamp := specifiedTime.Unix() fmt.Println("指定时间对应的时间戳(秒数):", timestamp) // 将指定时间转换为时间戳(纳秒数) nanosecondTimestamp := specifiedTime.UnixNano() fmt.Println("指定时间对应的时间戳(纳秒数):", nanosecondTimestamp) }
In the above example, we use the time.Date() function to define a specified time, and then use the Unix() and UnixNano() functions to convert it into a timestamp.
To summarize, in Golang, we can use the Now() function in the time package to get the timestamp of the current time, use the Parse() function to convert the string type time to a timestamp, and use Unix () function converts the specified year, month, day, hour, minute, and second into a timestamp. These methods can meet our needs for timestamps in actual development.
The above is the detailed content of How to get timestamp in golang. For more information, please follow other related articles on the PHP Chinese website!