时间::零件返回错误的价值



我试图随着时间的时间将日期从 yymmdd转换为 YYYY-MM-DD :: pripe模块。使用输入为Nov 31, 2000 (20001131),我将输出作为2000-12-01。实际上,Nov 31甚至都不存在。

use Time::Piece;
my $dt_str = Time::Piece->strptime('20001131', '%Y%m%d')->strftime('%Y-%m-%d');
print $dt_str;

我在这里错过了什么吗?

在内部进行粗略的验证和错误报告,然后执行与Posix :: MkTime相同的转换;一个月末以外的任何天都会导致其将生产的日期提高到下个月。这似乎有点不一致。由于它允许数天,所以我也希望它将" 20005931"视为" 2004-12-01",而是将其错误。

最新更新