PerlのモジュールのTime::Localの使い方ですが、ネットで調べたときに誤ったソースが多く見受けられたので、備忘録としてここに書き留めておきます。
Time::Localは人間が見やすい日時をコンピュータが扱いやすい秒に変換するモジュールです。
例えば、「2011-03-31 18:00:00」をTime::Localで変換すると「1301562000」になります。
秒の開始の基準はMacを除くと1970/1/1 00:00:00です。(Macは1904/1/1 00:00:00が基準)
わたしがどの様な場合に使うかというと、将来、あるいは過去の日時を扱うプログラムを作成したときに、「過去1週間以内の該当するデータを取り出す」あるいは「将来2週間以内の該当するデータを取り出す」という操作をさせるときに、秒で日時がデータベースに格納されていると、扱うのが楽になります。
1時間は「60(秒)*60(分)」なので3600秒です。
1日は3600*24(時間)で86400秒になります。
一週間なら86400*7となり604800、二週間なら86400*14となり1209600秒です。
以下、ソースです。