gpt4 book ai didi

Perl 时区转换 - 但仅使用核心模块

转载 作者:行者123 更新时间:2023-12-01 02:44:01 25 4
gpt4 key购买 nike

将来是否可以仅使用 Perl 核心模块为“任意”日期进行时区转换?

假设我在时区 X 中有 Day:month:year, hr:min(假设它是一个完全合格的时区,如 America/New_York),我需要将其转换为时区 Y(比如 Asia/Kolkata)

一些注意事项:

1) 这适用于 OSX(Lion 或更高版本)

2) 我知道如何使用 DateTime 和 DateManip 来完成,但这些不是核心模块,需要安装 C 编译器。我正在尝试将我的程序分发给“非技术”用户——他们可以在帮助下安装 perl 模块,但在尝试让 XCode、命令行工具等工作时会崩溃。有些人尝试安装 DateTime,但他们陷入错误/依赖关系并放弃了。

3) 我尝试使用 tzset 的组合;和 ENV TZ - 但不能用于任意日期 - 仅适用于本地时间(这意味着,我可以将“现在时间”转换为任何时区)

最佳答案

使用 POSIX核心模块。示例:

use POSIX;

$ENV{TZ} = 'Europe/Madrid';
$time_t = POSIX::mktime( 10, 30, 17, 4, 4, 113 );
print POSIX::ctime($time_t); #<-- prints: Sat May 4 17:30:10 2013

$ENV{TZ} = 'Europe/London';
print POSIX::ctime($time_t); #<-- prints: Sat May 4 16:30:10 2013

关于Perl 时区转换 - 但仅使用核心模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16375478/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com