永发信息网

Perl构造日期对象和计算日期间天数差的问题

答案:2  悬赏:70  手机版
解决时间 2021-02-28 15:55
请问Perl如何构造日期对象,并计算两个日期对象之间相差的天数?
最佳答案
#获取当前的时间
today = Time.new;
puts "当前日期:" + today.strftime("%Y-%m-%d %H:%M:%S");#采用格式化输出
#获取指定日期的时间 如 2010-08-30 20:50:01
day = Time.local(2010, 8 , 30 , 20, 50, 1);
puts "指定日期:" + day.strftime("%Y-%m-%d %H:%M:%S");
#获取指定日期的秒数(就是1970年到指定日期的秒数)
sec1 = day.to_i;
#同理,获取今天的秒数
sec2 = today.to_i;
#秒数求差,同时折合为天数
num = (sec1 - sec2)/(24*60*60);
puts (day.strftime("%Y-%m-%d %H:%M:%S") + "与" + today.strftime("%Y-%m-%d %H:%M:%S") + "相差" + num.to_s + "天");
全部回答
时间相减 use Date::Calc qw( Delta_Days ); print Delta_Days(2009,8,21,2010,8,21),"\n"; # calculate 2009-8-21 to 2010-8-21 # result 365 PERL时间操作对象 Perl中的time() 函数返回以纪元秒形式表示的当前日期和时间。如果你打算把它转换为字符串,就可使用gmtime() 和localtime() 函数: $now = localtime(time()); ($sec, $min, $hour, $day, $mon, $year, $wday, $yday, $isdst) = localtime(time()); 如果调用 localtime() 或gmtime() 时不带参数,它将自己调用time() $now = localtime(); ($sec, $min, $hour, $day, $mon, $year, $wday, $yday, $isdst) = localtime(); 常见的日期和时间操作 如果你打算计算两个时刻之间的时间段,只需将它们转换为相应的纪元秒,然后两数相减即可: $difference_in_seconds = $later_datetime -$earlier_datetime; 要把秒转换为分,时,或天数,只需要分别将它们除以60, 3600 和 86400 即可: $difference_in_minutes = $difference_in_seconds / 60; $difference_in_hours = $difference_in_seconds / 3600; $difference_in_day = $difference_in_seconds / 86400; 反过来做,你也可以回答如下问题:”4天后是几号?”: $then = time() + 86400 * 4; print scalar localtime $then; 它给出的答案精确到秒。例如,如果4天后的纪元秒值为932836935, 你可以输出日期的字符串如下; Sat Jul 24 11:23:17 1999 如果你打算输出那个日期的午夜时分 (如”Sat Jul 24 00:00:00 1999〃) 使用如下模块:$then = $then - $then % 86400; # 去掉那个日期的尾巴 类似地,你可以用四舍五入法,输出最靠近午夜时分的日期: $then += 43200; # add on half a day $then = $then - $then % 86400;# truncate to the day 如果你的时区距离GMT为相差偶数个小时,这就管用了。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
微萨不一样的比萨微萨怎么加盟微萨好不好做
张家口供电公司我想知道这个在什么地方
怎样正确的给狗狗喂食
花の宴怎么去啊,有知道地址的么
香港最好的干海参鲍鱼店
在北京的男士可以去哪买衣服,怎么逛
正商世纪港湾地址在什么地方,想过去办事
一台台式电脑(已经可以上网的),一台智能液晶
【skip怎么读】skip怎么读?
该买什么礼物送给刚满月的小孩子
为什么不愿相亲?
夜猫子我想知道这个在什么地方
求CAD电气照明平面图明装布线 画法 最好有图
关于井筒内凿井吊桶的布设,合理的是()。A.单
宜昌市伍家区a8公寓水电费在什么地方交还是先
推荐资讯
雕刻机工作完成自动回原点扎刀是什么原因??
下列各项中,可以釆用实地盘点法进行清查的项
卧龙小区东北门怎么去啊,有知道地址的么
WFB型无密封自控自吸泵为什么上量几分钟就不
交通银行银联Y-POWER信用卡黑卡取现后怎么还
古典诗词对我的影响 作文,800字以上 1个回答-
皮都花园怎么去啊,有知道地址的么
兴杰发小吃地址在哪,我要去那里办事
股票交易佣金多少
安徽大学磬苑校区-概率统计系在什么地方啊,
如图,已知正方形内阴影部分的面积是4平方厘米
今天余额宝的年息是多少?
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?