2012-05-07 87 views
1

我想比較Perl中的兩個日期以檢查差異(日期,月份等),這兩個日期的格式與DD-MMM-YYYY類似。在Perl中計算時間差異:效率高

我想在Perl中使用mktime或DateTime模塊。由於計算頻繁,我需要有效的方法。

請問你能推薦哪種方法更有效,方法是用2或者其他方法在Perl中完成它。

謝謝。

+1

請給出具體的例子來支持你的日期,什麼導致你想。 – Borodin

+3

你的意思是*頻繁*是什麼意思?每秒幾百甚至幾千?如果您在幾秒鐘內調用一次,則不應該擔心DateTime,否則應該編寫優化的子程序,甚至可以在C/XS – ArtM

回答

0

mktime是土生土長的系統調用,我相信應該比使用DateTime.pm其實例化新的Perl對象

+0

中添加代碼示例。 – daxim

1

Time::Piece和​​/::Format::Strptime是有效率的,他們很好地利用開發時間快。它們工作正常,經過徹底測試,大量使用並得到社區的認可,返回對象,不會受到C datetime API瘋狂的影響。

use Time::Piece qw(); 
my $t = Time::Piece->strptime('07-May-2012', '%d-%b-%Y'); 
# returns object of type Time::Piece 

use DateTime::Format::Strptime qw(); 
my $dt = DateTime::Format::Strptime 
    ->new(pattern => '%d-%b-%Y', locale => 'en') 
    ->parse_datetime('07-May-2012'); 
# returns object of type DateTime