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中实现给gif、png、jpeg图片添加文字水印
Apr 26 Golang
golang中切片copy复制和等号复制的区别介绍
Apr 27 Golang
go语言中json数据的读取和写出操作
Apr 28 Golang
golang 接口嵌套实现复用的操作
Apr 29 Golang
解决golang在import自己的包报错的问题
Apr 29 Golang
go类型转换及与C的类型转换方式
May 05 Golang
Golang 编译成DLL文件的操作
May 06 Golang
Go语言实现Base64、Base58编码与解码
Jul 26 Golang
使用GO语言实现Mysql数据库CURD的简单示例
Aug 07 Golang
Golang中channel的原理解读(推荐)
Oct 16 Golang
详解Golang如何优雅的终止一个服务
Mar 21 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
PHP Ajax实现页面无刷新发表评论
2007/01/02 PHP
PHP教程 预定义变量
2009/10/23 PHP
php var_export与var_dump 输出的不同
2013/08/09 PHP
一个基于phpQuery的php通用采集类分享
2014/04/09 PHP
PHP遍历目录并返回统计目录大小
2014/06/09 PHP
php天翼开放平台短信发送接口实现方法
2014/12/22 PHP
smarty的section嵌套循环用法示例
2016/05/28 PHP
php实时倒计时功能实现方法详解
2017/02/27 PHP
JavaScript方法和技巧大全
2006/12/27 Javascript
JavaScript DOM学习第一章 W3C DOM简介
2010/02/19 Javascript
JavaScript与DOM组合动态创建表格实例
2012/12/23 Javascript
js实现在字符串中提取数字
2013/11/05 Javascript
jQuery取得select选择的文本与值的示例
2013/12/09 Javascript
Jquery插件easyUi表单验证提交(示例代码)
2013/12/30 Javascript
JavaScript模拟可展开、拖动与关闭的聊天窗口实例
2015/05/12 Javascript
JQuery中Text方法用法实例分析
2015/05/18 Javascript
javascript实现页面刷新时自动清空表单并选中的方法
2015/07/18 Javascript
jQuery unbind 删除绑定事件详解
2016/05/24 Javascript
JS取数字小数点后两位或n位的简单方法
2016/10/24 Javascript
Vue的土著指令和自定义指令实例详解
2018/02/04 Javascript
基于Vue2x实现响应式自适应轮播组件插件VueSliderShow功能
2018/05/16 Javascript
webpack4 + react 搭建多页面应用示例
2018/08/03 Javascript
JS实现倒计时图文效果
2018/11/17 Javascript
Python优化技巧之利用ctypes提高执行速度
2016/09/11 Python
python 递归遍历文件夹,并打印满足条件的文件路径实例
2017/08/30 Python
python实现二分查找算法
2017/09/21 Python
python自动发邮件库yagmail的示例代码
2018/02/23 Python
解决pip install的时候报错timed out的问题
2018/06/12 Python
Python面向对象程序设计示例小结
2019/01/30 Python
Python 剪绳子的多种思路实现(动态规划和贪心)
2020/02/24 Python
Python中lru_cache的使用和实现详解
2021/01/25 Python
pandas统计重复值次数的方法实现
2021/02/20 Python
详解HTML5中download属性的应用
2015/08/06 HTML / CSS
爱淘宝:淘宝网购物分享平台
2017/04/28 全球购物
JavaScript实现淘宝商品图切换效果
2021/04/29 Javascript
基于Python实现流星雨效果的绘制
2022/03/18 Python