[Perl]



現在の時間から一定期間後の日付を調べるには、time関数で得た時間から一定時間後の秒数を足してあげればよい。


[サンプル]

#!/usr/bin/perl


#タイム関数で現在の時間を取得
$time = time();


#三日分の秒数を足す
$time += 259200;


#ローカルの時間に変更
($cday, $cmonth, $cyear) = (localtime($time))[3,4,5];
$cyear = $cyear+1900;
$cmonth = ++$cmonth;


#出力形式をYYYY/MM/DDにする
$three_days_after = sprintf("%4d/%02d/%02d", $cyear, $cmonth, $cday);
print "$three_days_after
";


[出力例]

2005/07/18


ちなみにDate::CalcモジュールのAdd_Delta_Days関数を使用しても同様のことができます。



広告
新版Perl言語プログラミングレッスン入門編 新版Perl言語プログラミングレッスン入門編
¥ 2,835 / 売り上げランク: 8432 / 512 ページ

非常に分かりやすい。
今までにも様々な参考書に目を通してきていたが、その中でもこの本かなり読みやすく、丁寧に書かれていた。
初心者には特にお勧め。
初心者以外の方でも軽く目を通す価値はあると思う。

Code Reading―オープンソースから学ぶソフトウェア開発技法 Code Reading―オープンソースから学ぶソフトウェア開発技法
¥ 5,460 / 売り上げランク: 8967 / 523 ページ

CodeCompleteとCodeReadingを併せて読むとよいと、
組込み系のSESSAMEプロジェクトのメーリングリストと、
OS系のTOPPERSプロジェクトのメーリングリストで推薦を受けました。

CodeCompleteは読んだことがあったので、CodeReadingを読んでいます。

オープンソースを仕事にしているので、たいへん役立っています。

MISRA-Cは研修で取り上げてきたので、本書も研修の資料としても取り上げるように準備中です。

初めてのPerl 初めてのPerl
¥ 3,780 / 売り上げランク: 11000 / 379 ページ

いわゆるリャマ本として知られる定番書

初めてのとあるが初心者向きではないと思う。
よくできてはいるが、、。