在我的 perl 程序中,我使用 use POSIX qw( strftime ); 库来执行 unixtimestamp 到日期的转换,如下所示,

my $dt = strftime("%m/%d/%y", localtime($fields[0]));

转换按预期进行,但出现以下错误。
 Prototype mismatch: sub main::strftime ($\@;$) vs none at
 /usr/lib/perl5/5.8.5/Exporter.pm line 67.
 at /usr/lib64/perl5/5.8.5/x86_64-linux-thread-multi/POSIX.pm line 19

有没有人指导我是什么原因以及如何摆脱它?

最佳答案

您要么有两个名为 strftime 的函数(但随后您可能还会收到另一个警告),或者您在声明 strftime 之前使用了它。

我总是明确指定我的导入,所以我从来没有遇到第一个问题。

 use Date::Format qw( );
 use POSIX        qw( strftime );

关于perl - 原型(prototype)不匹配:sub main::strftime,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17187378/

10-12 00:43