时间戳是自 1970 年 1 月 1 日(00:00:00 GMT)以来的秒数,也被称为 Unix 时间戳(Unix Timestamp)。
Unix时间戳(Unix timestamp),或称Unix时间(Unix time)、POSIX时间(POSIX time),是一种时间表示方式,定义为从格林威治时间1970年01月01日00时00分00秒起至如今的总秒数。
Unix时间戳不只被使用在Unix系统、类Unix系统中,也在许多其余操做系统中被普遍采用。
java
Java | time |
JavaScript | Math.round(new Date().getTime()/1000) getTime()返回数值的单位是毫秒。由于new Date().getTime()获得的是millisecond,须要除以1000 |
Microsoft .NET / C# | epoch = (DateTime.Now.ToUniversalTime().Ticks - 621355968000000000) / 10000000 |
MySQL | SELECT unix_timestamp(now()) |
Perl | time |
PHP | time() |
PostgreSQL | SELECT extract(epoch FROM now()) |
Python | 先 import time 而后 time.time() |
Ruby | 获取Unix时间戳:Time.now 或 Time.new 显示Unix时间戳:Time.now.to_i |
SQL Server | SELECT DATEDIFF(s, '1970-01-01 00:00:00', GETUTCDATE()) |
Unix / Linux | date +%s |
VBScript / ASP | DateDiff("s", "01/01/1970 00:00:00", Now()) |
其余操做系统 (若是Perl被安装在系统中) |
命令行状态:perl -e "print time" |
Java | String date = new java.text.SimpleDateFormat("dd/MM/yyyy HH:mm:ss").format(new java.util.Date(Unix timestamp * 1000))编程 java.util.Date的入参是millisecond。而Unix timestamp的单位是s编程语言 |
JavaScript | 先 var unixTimestamp = new Date(Unix timestamp * 1000) 而后 commonTime = unixTimestamp.toLocaleString()函数 js中Date须要的入参是millisecondspa |
Linux | date -d @Unix timestamp |
MySQL | from_unixtime(Unix timestamp) |
Perl | 先 my $time = Unix timestamp 而后 my ($sec, $min, $hour, $day, $month, $year) = (localtime($time))[0,1,2,3,4,5,6] |
PHP | date('r', Unix timestamp) |
PostgreSQL | SELECT TIMESTAMP WITH TIME ZONE 'epoch' + Unix timestamp) * INTERVAL '1 second'; |
Python | 先 import time 而后 time.gmtime(Unix timestamp) |
Ruby | Time.at(Unix timestamp) |
SQL Server | DATEADD(s, Unix timestamp, '1970-01-01 00:00:00') |
VBScript / ASP | DateAdd("s", Unix timestamp, "01/01/1970 00:00:00") |
其余操做系统 (若是Perl被安装在系统中) |
命令行状态:perl -e "print scalar(localtime(Unix timestamp))" |
Java |
Date date = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss").parse("01/01/1970 01:00:00"); long epoch = date.getTime(); 这个地方是否是须要除以1000转换成s呢?操作系统 |
JavaScript | var commonTime = new Date(Date.UTC(year, month - 1, day, hour, minute, second)).net 这个地方是否是须要除以1000转换成s呢?命令行 |
MySQL | SELECT unix_timestamp(time) 时间格式: YYYY-MM-DD HH:MM:SS 或 YYMMDD 或 YYYYMMDD |
Perl | 先 use Time::Local 而后 my $time = timelocal($sec, $min, $hour, $day, $month, $year); |
PHP | mktime(hour, minute, second, day, month, year) |
PostgreSQL | SELECT extract(epoch FROM date('YYYY-MM-DD HH:MM:SS')); |
Python | 先 import time 而后 int(time.mktime(time.strptime('YYYY-MM-DD HH:MM:SS', '%Y-%m-%d %H:%M:%S'))) |
Ruby | Time.local(year, month, day, hour, minute, second) |
SQL Server | SELECT DATEDIFF(s, '1970-01-01 00:00:00', time) |
Unix / Linux | date +%s -d"Jan 1, 1970 00:00:01" |
VBScript / ASP | DateDiff("s", "01/01/1970 00:00:00", time) |
http://unixtime.51240.com/scala
var oldTime = (new Date("2011/11/11 20:10:10")).getTime(); //获得毫秒数 var newTime = new Date(oldTime); //就获得普通的时间了
直接传入毫秒数做为参数,给Date对象就能够获得普通的时间了,而后经过getHours,getFullYear等方法获取年月日,时分秒了unix
建立一个日期对象:
var objDate=new Date([arguments list]);
参数形式有如下5种:
1)new Date("month dd,yyyy hh:mm:ss");
2)new Date("month dd,yyyy");
3)new Date(yyyy,mth,dd,hh,mm,ss);
在程序中我使用的第三种初始化方法,老是显示格式化的参数不正确,仔细看了一下必定要是整型的才能够,我传递的是字符串
4)new Date(yyyy,mth,dd);
5)new Date(ms);
须要注意最后一种形式,参数表示的是须要建立的时间和 GMT时间1970年1月1日之间相差的毫秒数。各类函数的含义以下:
month:用英文 表示月份名称,从January到December
mth:用整数表示月份,从(1月)到11(12月)
dd:表示一个 月中的第几天,从1到31
yyyy:四位数表示的年份
hh:小时数,从0(午夜)到23(晚11点)
mm: 分钟数,从0到59的整数
ss:秒数,从0到59的整数
ms:毫秒数,为大于等于0的整数
如:
new Date("January 12,2006 22:19:35"); new Date("January 12,2006"); new Date(2006,0,12,22,19,35); new Date(2006,0,12); new Date(1137075575000);
上面的各类建立形式都表示2006 年1月12日这一天。
http://www.jb51.net/article/44981.htm