Google Analytics

2009-12-05

PerlのDateTimeによる今風な日時処理についてのメモ

とても便利なのにまだ十分に活用されていない、DateTimeモジュールについて、実際に使ってみて気づいたことを書いておきます。

W3CDTF

DateTime::Format::W3CDTFは小数部を含む秒表現に対応していないので、W3CDTFのスーパーセットであるISO8601形式に対応したDateTime::Format::ISO8601を使う。

RSS

RSSの日時表現をパースするときは、表現が何種類かあるので、曖昧さに対応している、DateTime::Format::RSSを使う。

ミリ秒

時間精度が欲しいログを取る際などに、ミリ秒を記録したいときは、DateTime::HiResを使って、DateTime::HiRes->now->strftime('%Y-%m-%d %H:%M:%S.%3N') という感じで出力する。%3Nがミリ秒の部分となる。

JavaScriptなどで欲しくなる、ミリ秒でのUNIX epochが必要なときは、DateTime::HiRes->now->strftime('%s%3N') とする。

デバッグ

変な感じのときは、Data::Dumperで、内部変数を見てみる。

0 コメント:

コメントを投稿