Time::Local - 時刻情報をエポック秒に変換
Time::Localモジュールはlocaltime関数、gmtime関数とは逆向きの日付・時刻の変換を行うためのモジュールです。
日付と時刻(ローカル時間)をエポック秒に変換するにはTime::Localモジュールのtimelocal関数を使用します。
use Time::Local 'timelocal'; my $sec_from_epoch = timelocal($sec, $min, $hour, $mday, $month, $year);
日付と時刻(協定世界時)をエポック秒に変換するにはTime::Localモジュールのtimegm関数を使用します。
my $sec_from_epoch = timegm($sec, $min, $hour, $mday, $month, $year);
日付・時刻に関する一般的な情報については、以下を参考にしてください。
Time::Localのサンプル
Time::Localモジュールのサンプルです。
日付と時刻(ローカル時間)をエポック秒に変換するサンプルです。
use strict; use warnings; use Time::Local 'timelocal'; print "(1)日付と時刻(ローカル時間)をエポック秒に変換する。\n"; my $sec = 10; my $min = 30; my $hour = 12; my $mday = 1; # 1月は0、2月は1 のようになるので1を引く。 my $month = 10 -1; # Perlでは年は1900年からの日数で扱うので1900を引く my $year = 2000 - 1900; my $sec_from_epoch = timelocal($sec, $min, $hour, $mday, $month, $year); print $sec_from_epoch;
日付と時刻(ローカル時間)をエポック秒に変換する
my $sec = 10; my $min = 30; my $hour = 12; my $mday = 1; # 1月は0、2月は1 のようになるので1を引く。 my $month = 10 -1; # Perlでは年は1900年からの日数で扱うので1900を引く my $year = 2000 - 1900; my $sec_from_epoch = timelocal($sec, $min, $hour, $mday, $month, $year);
日付と時刻(ローカル時間)をエポック秒に変換するにはTime::Localモジュールのtimelocal関数を使用します。
timelocal関数は組み込み関数のlocaltimeとまったく逆の変換を行います。 timelocal関数に渡す引数は、localtime行われる変換規則と同じである必要があります。
月は0から始まるので、実際の月から1を引いた値を用いる必要があります。年は1900年からの年数なので1900を引く必要があります。
また日付と時刻(協定世界時)をエポック秒に変換するには、Time::Localモジュールのtimegm関数を使用します。
timegm関数を使ったサンプル
use strict; use warnings; use Time::Local 'timegm'; print "(1)日付と時刻(協定世界時)をエポック秒に変換する。\n"; my $sec = 10; my $min = 30; my $hour = 12; my $mday = 1; # 1月は0、2月は1 のようになるので1を引く。 my $month = 10 - 1; # Perlでは年は1900年からの日数で扱うので1900を引く my $year = 2000 - 1900; my $sec_from_epoch = timegm($sec, $min, $hour, $mday, $month, $year); print $sec_from_epoch;
日付と時刻(協定世界時)をエポック秒に変換する。
use Time::Local 'timegm'; my $sec = 10; my $min = 30; my $hour = 12; my $mday = 1; # 1月は0、2月は1 のようになるので1を引く。 my $month = 10 - 1; # Perlでは年は1900年からの日数で扱うので1900を引く my $year = 2000 - 1900; my $sec_from_epoch = timegm($sec, $min, $hour, $mday, $month, $year);
日付と時刻(協定世界時)をエポック秒に変換するには、timegm関数を使用します。
timegm関数は組み込み関数のgmtimeとまったく逆の変換を行います。timegm関数に渡す引数は、gmtime行われる変換規則と同じである必要があります。
月は0から始まるので、実際の月から1を引いた値を用いる必要があります。年は1900年からの年数なので1900を引く必要があります。
また日付と時刻(ローカル時間)をエポック秒に変換するには、Time::Localモジュールのtimelocal関数を使用します。