我正在尝试使用字符串日期,并将其格式化为正确输出为"%Y%m%d_%H%M"。除了白天,一切都输出正确。它实际上在第二天返回,我不知道为什么会这样。下面是代码和输出。
my $currentTime = strftime("%Y%m%d_%H%M\n", gmtime(time));
my $hashTime = strftime("%Y%m%d_%H%M\n", gmtime(UnixDate($user->{'add_date'}, "%s")));
$self->Print($user->{'add_date'} ."\n". $currentTime . "\n" . $hashTime);
输出:
2016-12-02 20:35:43 # Date from the Database
20161202_2046 # Current GMTime
20161203_0235 # This should be 20161202_2035?
它怎么输出为03?
答案 0 :(得分:1)
好的,所以我明白了。对于好奇的人,新代码如下。
my $currentTime = strftime("%Y%m%d_%H%M\n", gmtime(time));
my $hashTime = UnixDate($user->{'add_date'}, "%Y%m%d_%H%M");
$self->Print($user->{'add_date'} ."\n". $currentTime . "\n" . $hashTime);
正如您所知,在$ hashTime下,当使用UnixDate()时,您不需要使用strftime,因为它已经按照您需要的方式对其进行格式化。