Oracle下时间转换在几种语言中的实现
2020-07-26 14:36:18
供稿:网友
 
						c shell perl php下的日期时间转换: 秒数与人类可读日期 scalar localtime 与 seconds since `00:00:00 1970-01-01 UTC' 
scalar localtime 26-byte string 与 seconds since `00:00:00 1970-01-01 UTC' 
(1970年1月1日凌晨零点以来的秒数) 
the number of seconds that have passed since the Epoch: 00:00:00 January 1, 1970, Coordinated Universal Time (UTC).  
c: 
《Advanced Programming in the UNIX Environment: Second Edition》 
简称《APUE》 Seciont 6.10 Figure 6.8. Relationship of the various time functions 说的清楚 
#include <time.h> 
time_t time(time_t *calptr); 
struct tm *localtime(const time_t *calptr); 
struct tm *gmtime(const time_t *calptr); 
time_t mktime(struct tm *tmptr); 
char *asctime(const struct tm *tmptr); 
char *ctime(const time_t *calptr); 
size_t strftime(char *restrict buf, size_t maxsize, 
                const char *restrict format, 
                const struct tm *restrict tmptr); 
shell: 
% date +%s 
1128621784 
% date -d "1970-01-01 UTC 1128621784 seconds" 
Fri Oct  7 02:03:04 CST 2005 
date -d "1970-01-01 UTC 1128621784 seconds" +"%Y-%m-%d %H:%M:%S" 
2005-10-07 02:03:04 
perl: 
%  perl -e 'print scalar localtime 1128621784' 
Fri Oct  7 02:03:04 2005 
php: 
date('Y-m-d H:i:s',time());