首页 > 编程/数据库 > 时间戳小知识

时间戳小知识

2010年1月29日 Leo 发表评论 阅读评论

Unix时间戳(Unix timestamp),或称Unix时间(Unix time)、POSIX时间(POSIX time),是一种时间表示方式,定义为从格林威治时间1970年01月01日00时00分00秒起至现在的总秒数。Unix时间戳不仅被使用在Unix 系统、类Unix系统中,也在许多其他操作系统中被广告采用。

目前相当一部分操作系统使用32位二进制数字表示时间。此类系统的Unix时间戳最多可以使用到格林威治时间2038年01月19日03时14分07秒(二进制:01111111 11111111 11111111 11111111)。其后一秒,二进制数字会变为10000000 00000000 00000000 00000000, 发生溢出错误,造成系统将时间误解为1901年12月13日20时45分52秒。这很可能会引起软件故障,甚至是系统瘫痪。使用64位二进制数字表示时间 的系统(最多可以使用到格林威治时间292,277,026,596年12月04日15时30分08秒)则基本不会遇到这类溢出问题。

select UNIX_TIMESTAMP(‘2009-12-04 22:23:00′); --》 1259936580

SELECT UNIX_TIMESTAMP(); --》获取现在

SELECT FROM_UNIXTIME( 1259936580, ‘%Y-%m-%d %H:%i:%s’ ); 还原时间戳

分类: 编程/数据库 标签: , ,
被市民关注并践踏 » 207 views
  1. 本文目前尚无任何评论.
  1. 本文目前尚无任何 trackbacks 和 pingbacks.