unix时间戳(英文为Unix epoch, Unix time, POSIX time 或 Unix timestamp),是从1970年1月1日(UTC/GMT的午夜)开始到某一时刻所经过的秒数,不考虑闰秒。
时间戳0按照ISO 8601格式写出来为 1970-01-01T00:00:00Z 。一小时为3600秒,一个基准日(也称纪元日,epoch day)是86400秒,闰秒没有计算在内。
1、在linux bash下北京时间与unix时间戳互转:
获取unix timestamp:
- 命令:date "+%s"
- 输出:1372654714
获取北京时间:
- 命令:date '+%Y-%m-%d %H:%M:%S'
- 输出:2013-07-01 12:55:56
unix timestamp转北京时间:
- 命令:date -d@1372654714 '+%Y-%m-%d %H:%M:%S'
- 输出:2013-07-01 12:58:34
北京时间转unix timestamp:
- 命令:date -d"2013-07-01 12:58:34" '+%s'
- 输出:1372654714
2、用mysql sql语句实行unix时间戳与北京时间互转:
获取unix时间戳:
- 语句:select unix_timestamp();
- 输出:1372659589
获取北京时间:
- 语句:select now();
- 输出:2013-07-01 12:55:56
unix时间戳转北京时间:
- 语句:select from_unixtime(1229055132,"%Y-%m-%d %h:%i:%s");
- 输出:2008-12-12 12:12:12
北京时间转unix时间戳:
- 语句:select unix_timestamp("2008-12-12 12:12:12");
- 输出:1229055132
3、php语言实现北京时间与unix timestamp互转:
获取unix timestamp:
- 代码:echo time();
- 输出:1372659589
获取北京时间:
- 代码:echo date("Y-m-d H:i:s");
- 输出:2013-07-01 14:47:56
unix timestamp转北京时间:
- 代码:echo date("Y-m-d H:i:s",1372661384);
- 输出:2013-07-01 14:49:44
北京时间转unix timestamp:
- 代码:echo time("2013-01-01 24:38:52");
- 输出:1372661472
4、javaScript实现北京时间与unix timestamp互转:
获取unix timestamp:
- 代码:alert(Math.round(new Date().getTime()/1000));
- 弹出:1372664103
获取北京时间:
- 代码:alert((new Date()).toLocaleString());
- 弹出:2013-07-01 14:47:56
unix timestamp转北京时间:
- 代码:alert((new Date(1234567890*1000)).toLocaleString());
- 弹出:2009-2-14 07:31:30
北京时间转unix timestamp:
- 代码:alert(Date.parse("2012/05/05 15:38:45")/1000)
- 弹出:1336203525
5、java实现北京时间与unix timestamp互转:
unix timestamp转北京时间:
- String date=new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new java.util.Date(123456789 * 1000))
北京时间转unix timestamp:
- long n = new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse("2012-12-12 12:12:12");
6、PostgreSQL实现北京时间与unix timestamp互转:
unix timestamp转北京时间:
- SELECT TIMESTAMP WITH TIME ZONE 'epoch' + 1372654714) * INTERVAL '1 second'
北京时间转unix timestamp:
- SELECT extract(epoch FROM date('YYYY-MM-DD HH:MM:SS'));
7、python实现北京时间与unix timestamp互转:
unix timestamp转北京时间:
- import time
- time.gmtime(1372654714)
北京时间转unix timestamp:
- import time
- int(time.mktime(time.strptime('YYYY-MM-DD HH:MM:SS', '%Y-%m-%d %H:%M:%S')))
8、perl实现北京时间与unix timestamp互转:
unix timestamp转北京时间:
- 先 my $time = Unix timestamp
- 然后 my ($sec, $min, $hour, $day, $month, $year) = (localtime($time))[0,1,2,3,4,5,6]
北京时间转unix timestamp:
- 先 use Time::Local
- 然后 my $time = timelocal($sec, $min, $hour, $day, $month, $year);
9、SQL Server实现北京时间与unix timestamp互转:
unix timestamp转北京时间:
- DATEADD('s', 1372654714, '1970-01-01 00:00:00')
北京时间转unix timestamp:
- SELECT DATEDIFF('s', '1970-01-01 00:00:00', '2012-01-01 10:10:10')
10、VBScript/ASP实现北京时间与unix timestamp互转:
unix timestamp转北京时间:
- DateAdd("s", 1372654714, "01/01/1970 00:00:00")
北京时间转unix timestamp:
- DateDiff("s", "01/01/1970 00:00:00", "08/07/2013 13:13:13")
8、ruby实现北京时间与unix时间戳互转:
unix时间戳转北京时间:
- Time.at(1372654714)
北京时间转unix时间戳:
- Time.local(2013, 12, 24, 14, 36, 48)