首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Perl中的Parsedate问题

Perl中的Parsedate问题
EN

Stack Overflow用户
提问于 2010-08-05 08:58:26
回答 2查看 733关注 0票数 1

在Perl中,为什么我从parsedate(2010-7-2 13:0:0)和parsedate(2010-7-2 13:00:0)得到不同的结果?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-08-05 09:20:50

2010-7-2 13:0:0字符串的格式无效,并且实际上根本没有被解析(看起来是这样),parsedate("2010-7-2")为我返回与parsedate("2010-7-2 13:0:0")相同的值就证明了这一点。

基于the docs,它只是解析YYYY-MM-DD,而根本不解析13:0:0,因为它期望它是HH:MM格式,而不是HH:M格式。基本上,您必须使用两位数作为分钟,才能使其成为有效的输入。

票数 5
EN

Stack Overflow用户

发布于 2015-08-15 13:57:02

要更灵活地处理日期格式,请尝试使用DateTime:: format ::Strptime

代码语言:javascript
复制
my $strp = DateTime::Format::Strptime->new(
    pattern   => '%Y-%m-%d %T',
    locale    => 'en_AU',
    time_zone => 'Australia/Melbourne',
);

my $dt1 = $strp->parse_datetime('2010-7-2 13:0:0');
my $date_1 = $strp->format_datetime($dt1);

$date_1现在被转换为格式良好的日期格式"2010-07-02 13:00:00“。然后,您可以调用parsedate($date_1) & get epoch。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3411024

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档