UNIX時間をYYYYMMDDHHMMSSに変換するサンプルコードを紹介します。
以下のサンプルコードはUNIX時間を年月日時分秒に変換し出力します。
GMTとローカル時間を表示するようになっています。
htmlinsert(): The given local file does not exist or is not readable.
#!/usr/bin/perl use strict; use warnings; if ( @ARGV != 1 ) { die "Usage:\n\t$0 UNIX-TIME\n"; } my $unix_time = shift; my ($sec, $min, $hour, $mday, $mon, $year); ($sec, $min, $hour, $mday, $mon, $year) = gmtime($unix_time); $year += 1900; $mon += 1; printf("GMT:\t%04d/%02d/%02d %02d:%02d:%02d\n", $year ,$mon, $mday, $hour, $min, $sec); ($sec, $min, $hour, $mday, $mon, $year) = localtime($unix_time); $year += 1900; $mon += 1; printf("LOCAL:\t%04d/%02d/%02d %02d:%02d:%02d\n", $year ,$mon, $mday, $hour, $min, $sec);
UNIX標準時間として0を指定すると以下のような出力になります。
動作させたマシンのロケールがJSTなのでローカル時間は標準時+9時間となっていることが確認できます。
$ ./timet_conv.pl 0 GMT: 1970/01/01 00:00:00 LOCAL: 1970/01/01 09:00:00
以上、UNIX時間をYYYYMMDDHHMMSSに変換する方法でした。