Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Perl: Системное программирование > Date::Calc


Автор: XeDuH 20.12.2005, 17:07
Пожлуйста приведите пример кода с использованием модуля Date::Calc для расчета разницы в днях между двуя датами (например 01.10.1988 - 01.10.1998)

Документация по модулю http://cpan.uwinnipeg.ca/htdocs/Date-Calc/Date/Calc.html

Автор: korob2001 20.12.2005, 21:48
Вообще-то документацию ты должен сам читать. smile
Если нужно именно с Date::Calc, то можно так:
Код

#!/usr/bin/perl -w
use strict;
use Date::Calc qw(Delta_DHMS);

my $date1 = "01.10.1988";
my $date2 = "01.10.1989";


my( $days1, $month1, $year1 ) = ($date1 =~ /^(\d{2})\.(\d{2})\.(\d{4})$/);
my( $days2, $month2, $year2 ) = ($date2 =~ /^(\d{2})\.(\d{2})\.(\d{4})$/);


my( $days, $hours, $minutes, $seconds ) = Delta_DHMS( $year1, $month1, $days1, 0, 0, 0,
                                                      $year2, $month2, $days2, 0, 0, 0 );

print "Разница между датами $date1 и $date2:\n";
print "Дней: $days\n";
print "Часов: $hours\n";
print "Минут: $minutes\n";
print "Секунд: $seconds\n";

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)