背景:在PHP中存储到Mysql数据库中为10位数据的时间戳,在导入导出为xls时需要相互转换
1971年底出版的《Unix Programmer's Manual》里定义的Unix Time是以1971年1月1日00:00:00作为起始时间,每秒增长60。
之后考虑到32位整数的范围,如果每秒60个数字,则两年半就会循环一轮了。于是改成了以秒为计数单位。
这个循环周期有136年之长,就不在乎起始时间是1970还是1971年了,于是就改成了人工记忆、计算比较方便的1970年了。
在excel中将10位秒级别的时间戳转换为标准的日期格式(yyyy-mm-dd hh:mm:ss.000),使用如下模板=TEXT(<source_cell>/86400+70*365+19,"yyyy-mm-dd hh:mm:ss.000")
1. 10位的时间戳转换为日期格式:
=TEXT((A2+8*3600)/86400+70*365+19,"yyyy/mm/dd hh:mm:ss")
这一部分内容:(A2/1000+8*3600)指的是东八区,带时区的含义
2. 日期格式转10位时间戳的公式
= INT((A2-70*365-19)*86400-8*3600)