いい加減DateTimeまわりのモジュールを列挙するのがいやになったので、工場を書いた。 use strict; use warnings; use DateTimeX::Web; my $dtx = DateTimeX::Web->new( timezone => 'Asia/Tokyo', on_error => 'ignore' ); my $dt = $dtx->from( year => 2008, month => 2, ... ) || $dtx->now;などとすると、タイムゾーンとかをよきにはからったDateTimeオブジェクトが出てくる寸法。 $dtx->for_mail( $dt ); # Fri, 29 Feb 2008 20:57:00 +0900 $dtx->for_mysql; # 2008-02-29 20:57:00 という感じで日時の文字列をつくったり、