В стандартной установке Perl доступно много модулей даты и времени, что означает, что вам не нужно ничего устанавливать. Этот модуль был доступен в той или иной форме начиная с версии Perl 3.x:
Вот другие версии 5.8:
Более новые версии Perl включают:
Вы можете использовать команду perldoc
, чтобы увидеть, какие модули вы установили:
C:> perldoc -l Time::Piece
C:\Perl\lib\Time\Piece.pm
Unix хранит время в секундах, прошедших с «Эпока», то есть 1 января 1970 года, и Perl делает то же самое (даже в Windows).
Таким образом, как только вы переведете свою дату в Perl-время, вы можете просто вычесть 8 640 000, то есть количество секунд в 100 днях. (100 дней * 24 часа / день * 60 минут / час * 60 секунд / минута), затем преобразуйте это обратно в строку.
На очень базовом уровне вы можете сделать это, используя функцию gmtime в Perl и timegm в модуле Local :: Time.
Другие модули позволяют очень просто преобразовывать время из формата в другой и даже выполнять некоторые математические операции. Мой фаворит - Time::Piece
, который позволяет вам использовать формат strptime , чтобы быстро конвертировать ваше время из любого формата, в котором он находится. Затем вы можете использовать функцию члена epoc
, чтобы конвертировать время обратно в секунды вычтите 8 640 000 и преобразовайте его обратно в строку.