golang 实现时间戳和时间的转化


Posted in Golang onMay 07, 2021

说实话,golang的时间转化还是很麻烦的,最起码比php麻烦很多,上码好好学学一下

package main 
import (
   "time"
   "fmt"
)
 
func main() {
   //获取当前时间
   t := time.Now() //2018-07-11 15:07:51.8858085 +0800 CST m=+0.004000001
   fmt.Println(t)
 
   //获取当前时间戳
   fmt.Println(t.Unix()) //1531293019
 
   //获得当前的时间
   fmt.Println(t.Uninx().Format("2006-01-02 15:04:05"))  //2018-7-15 15:23:00
 
   //时间 to 时间戳
   loc, _ := time.LoadLocation("Asia/Shanghai")        //设置时区
   tt, _ := time.ParseInLocation("2006-01-02 15:04:05", "2018-07-11 15:07:51", loc) //2006-01-02 15:04:05是转换的格式如php的"Y-m-d H:i:s"
   fmt.Println(tt.Unix())                             //1531292871
 
   //时间戳 to 时间
   tm := time.Unix(1531293019, 0)
   fmt.Println(tm.Format("2006-01-02 15:04:05")) //2018-07-11 15:10:19
 
   //获取当前年月日,时分秒
   y := t.Year()                 //年
   m := t.Month()                //月
   d := t.Day()                  //日
   h := t.Hour()                 //小时
   i := t.Minute()               //分钟
   s := t.Second()               //秒
   fmt.Println(y, m, d, h, i, s) //2018 July 11 15 24 59
}

补充:Golang 13位时间戳转time.Time

时间戳:

时间戳是使用数字签名技术产生的数据,签名的对象包括了原始文件信息、签名参数、签名时间等信息。时间戳系统用来产生和管理时间戳,对签名对象进行数字签名产生时间戳,以证明原始文件在签名时间之前已经存在。

mysql类型timestamp(时间戳)和datetime(时间)差别:

timestamp占用4个字节;

datetime占用8个字节;

timestamp范围1970-01-01 00:00:01.000000 到 2038-01-19 03:14:07.999999;

datetime是1000-01-01 00:00:00.000000 到 9999-12-31 23:59:59.999999;

时间戳格式:

10位数的时间戳是以 秒 为单位,如:1530027865

13位数的时间戳是以 毫秒 为单位, 如:1530027865231

19位数的时间戳是以 纳秒 为单位,如:1530027865231834600

Golang获取当前时间或时间戳

// string
time.Now().Format("2006-01-02 15:04:05")
// time.Time
time.Now()
// int64 时间戳,默认10位,单位:秒
time.Now().UnixNano()

13位时间戳转时间格式

func UnixToTime(e string) (datatime time.Time, err error) {
 data, err := strconv.ParseInt(e, 10, 64)
 datatime = time.Unix(data/1000, 0)
 return
}

时间转13位时间戳

func TimeToUnix(e time.Time) int64 {
 timeUnix, _ := time.Parse("2006-01-02 15:04:05", e.Format("2006-01-02 15:04:05"))
 return timeUnix.UnixNano() / 1e6
}

以上为个人经验,希望能给大家一个参考,也希望大家多多支持三水点靠木。如有错误或未考虑完全的地方,望不吝赐教。

Golang 相关文章推荐
golang判断key是否在map中的代码
Apr 24 Golang
golang http使用踩过的坑与填坑指南
Apr 27 Golang
解决Golang中ResponseWriter的一个坑
Apr 27 Golang
Golang: 内建容器的用法
May 05 Golang
Golang标准库syscall详解(什么是系统调用)
May 25 Golang
Go语言空白表示符_的实例用法
Jul 04 Golang
基于Go语言构建RESTful API服务
Jul 25 Golang
深入理解go slice结构
Sep 15 Golang
Go 语言中 20 个占位符的整理
Oct 16 Golang
Go语言grpc和protobuf
Apr 13 Golang
Golang并发工具Singleflight
May 06 Golang
Golang实现可重入锁的示例代码
May 25 Golang
Golang Gob编码(gob包的使用详解)
May 07 #Golang
go mod 安装依赖 unkown revision问题的解决方案
解决golang 关于全局变量的坑
May 06 #Golang
Goland使用Go Modules创建/管理项目的操作
解决goland 导入项目后import里的包报红问题
Go 自定义package包设置与导入操作
goland 设置project gopath的操作
You might like
用PHPdig打造属于你自己的Google[图文教程]
2007/02/14 PHP
php echo()和print()、require()和include()函数区别说明
2010/03/27 PHP
PHP中array_map与array_column之间的关系分析
2014/08/19 PHP
自制PHP框架之设计模式
2017/05/07 PHP
PHP面向对象程序设计(OOP)之方法重写(override)操作示例
2018/12/21 PHP
PHP实现创建一个RPC服务操作示例
2020/02/23 PHP
PHP Ajax跨域问题解决方案代码实例
2020/08/01 PHP
如何判断元素是否为HTMLElement元素
2013/12/06 Javascript
javascript 实现子父窗体互相传值的简单实例
2014/02/17 Javascript
Javascript基础知识(二)事件
2014/09/29 Javascript
DOM基础教程之模型中的模型节点
2015/01/19 Javascript
javascript删除元素节点removeChild()用法实例
2015/05/26 Javascript
基于jQuery+Cookie实现的防止刷新的在线考试倒计时
2015/06/19 Javascript
Javascript的无new构建实例详解
2016/05/15 Javascript
jQuery实现的简单拖动层示例
2017/02/22 Javascript
基于JQuery的购物车添加删除以及结算功能示例
2017/03/08 Javascript
JavaScript阻止表单提交方法(附代码)
2017/08/15 Javascript
axios post提交formdata的实例
2018/03/16 Javascript
在vue中使用Autoprefixed的方法
2018/07/27 Javascript
vue.js this.$router.push获取不到params参数问题
2020/03/03 Javascript
Node.js API详解之 dns模块用法实例分析
2020/05/15 Javascript
详解Python设计模式编程中观察者模式与策略模式的运用
2016/03/02 Python
在Pycharm中项目解释器与环境变量的设置方法
2018/10/29 Python
python字典嵌套字典的情况下找到某个key的value详解
2019/07/10 Python
python scrapy爬虫代码及填坑
2019/08/12 Python
python实现按首字母分类查找功能
2019/10/31 Python
Python使用Pandas读写Excel实例解析
2019/11/19 Python
俄罗斯香水和化妆品购物网站:Л’Этуаль
2018/05/10 全球购物
一封普通求职者的求职信
2013/11/20 职场文书
小学生家长评语大全
2014/02/10 职场文书
建材投资建议书
2014/05/16 职场文书
党员个人查摆剖析材料
2014/10/16 职场文书
特岗教师个人总结
2015/02/10 职场文书
爱心捐赠活动简讯
2015/07/20 职场文书
Nginx内网单机反向代理的实现
2021/11/07 Servers
win10重装系统后上不了网怎么办 win10重装系统网络故障的解决办法
2022/07/23 数码科技