Как получить дату в формате ММ / ДД / ГГГГ в Perl. Я использую Perl 5.8 - PullRequest
0 голосов
/ 18 октября 2019

Привет. Я пытаюсь сохранить дату в переменной $ date. Затем я буду использовать Excel :: Writer :: XLSX, чтобы напечатать дату в ячейку. Я использую Perl 5.8. Я знаю, что многие модули, используемые для получения даты, такие как TimePiece, были установлены в более поздних версиях Perl.

Ответы [ 2 ]

5 голосов
/ 18 октября 2019

Вы правы, что Time :: Piece является только ядром начиная с Perl 5.10. Но вы можете установить его из CPAN. Затем вы можете использовать его метод strftime:

use strict;
use warnings;
use Time::Piece;
my $date = localtime->strftime('%m/%d/%Y');

Без него вы можете использовать встроенную функцию localtime , которая также имеет более приятную оболочку Time :: localtime (даже в 5,8). Вы просто должны быть осторожны, потому что значения, возвращаемые POSIX по местному времени, не совсем то, что вы ожидаете.

use strict;
use warnings;
use Time::localtime;
my $now = localtime;
my $date = sprintf '%02d/%02d/%04d', $now->mon + 1, $now->mday, $now->year + 1900;
4 голосов
/ 19 октября 2019
use POSIX qw( strftime );

strftime('%m/%d/%Y', localtime)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...