perl时间格式转换
时间:2010-09-29
来源:互联网
请问perl怎么把‘Tue Sep 28 18:40:19 2010’ 转换成unix时间戳1285670419?
作者: leoxqing 发布时间: 2010-09-29
你看一下Date::Manip模块··好像可以的
作者: wfnh 发布时间: 2010-09-29
本帖最后由 黑色阳光_cu 于 2010-09-29 15:01 编辑
复制代码
- sub convert_time
- {
- require Time::Local;
-
- my ($time_str) = @_;
- my $time;
-
- my $convert_month = sub
- {
- my %months =
- (
- Jan => 0,
- Feb => 1,
- Mar => 2,
- Apr => 3,
- May => 4,
- Jun => 5,
- Jul => 6,
- Aug => 7,
- Sep => 8,
- Oct => 9,
- Nov => 10,
- Dec => 11
- );
-
- return $months{$_[0]};
- };
-
- if ($time_str =~ /^\w+\s+(\w+)\s+(\d+)\s+(\d+):(\d+):(\d+)\s+(\d+)$/)
- {
- my ($month, $day, $h, $m, $s, $year) = ($convert_month->($1), $2, $3, $4, $5, $6);
- if (defined $month)
- {
- $time = Time::Local::timelocal($s, $m, $h, $day, $month, $year);
- }
- }
-
- return $time;
- }
-
- die convert_time("Tue Sep 28 18:40:19 2010");
作者: 黑色阳光_cu 发布时间: 2010-09-29
利用
use HTTP:
ate;
my $str="Tue Sep 28 18:40:19 2010";
my $time=HTTP:
ate::str2time($str,'+0000'); #此处要附加'+0000'
print "$time\n";
结果
1285699219
use HTTP:

my $str="Tue Sep 28 18:40:19 2010";
my $time=HTTP:

print "$time\n";
结果
1285699219
作者: magnet2008 发布时间: 2010-09-29
改成+0800就是你的结果,这是时区的问题吧。
1285670419
1285670419
作者: magnet2008 发布时间: 2010-09-29
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28