我在Perl中有一个变量,我初始化为$invoice_date = '1/6/14'
(2014年6月1日)。如何确定Perl认为此变量的数据类型?
我想从发票日期减去一分钟到2014年5月31日晚上11:59。无论是否将$ invoice_date声明为某种数据类型,我该怎么办?
更新:感谢您的评论和解答。因为它是一个字符串,所以我将尝试连接时间部分。我有另一个变量$ period_end_date,它设置为2014年5月31日。我将尝试将11:59 PM连接到它。
随后在SQL语句中发送该字符串。如果我可以弄清楚SQL对字符串的期望,那么应该可以插入时间部分。
答案 0 :(得分:3)
您需要一些日期操作模块,因为'1/6/14'
是纯字符串,并且在Y2K事件之前放弃了两位数年份。
use Time::Piece;
use Time::Seconds;
my $t = Time::Piece->strptime("1/6/2014", "%d/%m/%Y");
$t -= ONE_MINUTE;
print $t;
输出
Sat May 31 23:59:00 2014