快速到达当地时间 YYYY-MM-DD HH:MM:SS 在 Perl 中



我想获取本地时间并格式化为 YYYY-MM-DD HH:MM:SS (说 2009-11-29 14:28:29(。如何获取这种格式的日期 YYYY-MM-DD HH:MM:SS ?

我试过

my $format = "%4u-%02u-%02u %02u:%02u:%02u";
my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime;
printf "$formatn", $year+1900, $mon+1, $mday, $hour, $min, $sec;

打印输出是我想要的,但是如何将输出设计为变量?

使用 sprintf 而不是 printf

my ($sec, $min, $hour, $mday, $mon, $year) = localtime;
my $formatted = sprintf "%4u-%02u-%02u %02u:%02u:%02u",
   $year+1900, $mon+1, $mday, $hour, $min, $sec;

但是使用strftime要简单得多。

use POSIX qw( strftime );
my $formatted = strftime("%Y-%m-%d %H:%M:%S", localtime);

最新更新