与Perl中的本地时间功能相反的是什么?

Kip*_*Kip 7 perl timestamp

在Perl中,localtime取一个Unix时间戳并返回年/月/日/小时/分钟/秒等.我正在寻找相反的localtime:我有部分,我想从它们构建一个unix时间戳.

Rob*_*nes 16

您可以在Time :: Local CPAN模块中使用timelocal函数.

名称

时间::本地 - 从本地和GMT时间有效地计算时间

概要

$time = timelocal($sec,$min,$hour,$mday,$mon,$year);
$time = timegm($sec,$min,$hour,$mday,$mon,$year);
Run Code Online (Sandbox Code Playgroud)

描述

该模块提供与内置perl函数localtime()和gmtime()相反的函数.它们接受一个六元素数组的日期,并返回自系统纪元以来的相应时间(2)值(例如,在Unix上的1970年1月1日午夜,GMT).此值可以是正数或负数,但POSIX仅需要支持正值,因此系统时期之前的日期可能无法在所有操作系统上运行.

值得特别注意所提供值的预期范围.月份的值是实际的日期(即1..31),而月份是自1月份(0..11)以来的月份.这与localtime()和gmtime()返回的值一致.

注意: POSIX :: mktime只是C库mktime()函数的包装器.Time :: Local是一个纯Perl实现,并且总是返回与Perl匹配的结果localtime.此外,Time :: Local提供gmtime,但mktime仅适用于当地时间.(好吧,你可以尝试改变$ENV{TZ},但这在某些系统上不起作用.)


Ben*_*n S 7

CPAN上的DateTime可能有一些用处.它还有很多时间操作/翻译方法.

只需使用您的部件创建DateTime并调用$ datetime-> formatter("%s");