top

TOP  RSS  Login

Perl - Time::localtime

概要

Perl のビルトイン関数 localtime() の返す値それぞれに、名前付きでアクセスを可能にするモジュール。標準モジュール。

使用法

localtime() は Time::tm オブジェクトを返し、そのオブジェクトを介してビルトインの localtime() が返す配列のそれぞれの値に対応する "sec", "min", "hour", "mday", "mon", "year", "wday", "yday", "isdst" のメソッドを提供する。

ctime() は、ビルトインの localtime() をスカラ値で評価した際に返す文字列を返す。

use Time::localtime;

my $tl = localtime();
print $tl->year + 1900 . "". ($tl->mon +1). "". $tl->mday . "";

その他

特に何も指定せずにただ use Time::localtime; として利用する場合には、パッケージ内の localtime() が Time::localtime の提供する関数で置き換えられるので注意。

置き換えられる前の localtime() だったビルトイン関数は CORE::localtime() でアクセスできるものの、既存のスクリプトを書き換える場合など、他の場所で localtime() を使用していれば混乱を来すことになる。use によって Time::localtime をロードする(=Time::localtime->can("import") を呼び出す)際に空の引数を渡すと localtime() は上書きされない。

use Time::localtime ();

*named_localtime = \&Time::localtime::localtime;

print named_localtime()->hour;

上のようにロードする側で Time::localtime::localtime() の別名を付けて、CORE::localtime() と区別して利用するといいかも知れない。

リンク

Last modified:2008/11/29 04:05:26

ob

0.273016