Как мне конвертировать местное время в Unix в Perl? - PullRequest
1 голос
/ 10 февраля 2010

Например: с даты: 10/02/2010

Как конвертировать равную метку времени для 10/02/2010 00:00:00 в Perl

Я не могу использовать местное время или время .. есть ли другой способ добиться этого ..

Ответы [ 6 ]

10 голосов
/ 10 февраля 2010

Вы можете использовать основной модуль Time::Local:

use Time::Local 'timelocal';
my ($d, $m, $y) = split '/', '10/02/2010';
my $time = timelocal(0, 0, 0, $d, $m-1, $y);

Обратите внимание, что аргумент месяца для timelocal() находится в диапазоне 0..11.

7 голосов
/ 10 февраля 2010

Без местного времени ():

use Time::Local;    
$time = timelocal($sec,$min,$hour,$mday,$mon,$year);

(см. Perldoc)

Стандартный способ будет выглядеть примерно так:

use POSIX;

use strict;
use warnings;

my $sec  = 0;
my $min  = 0;
my $hour = 0;
my $day  = 10;
my $mon  = 2 - 1;
my $year = 2010 - 1900;
my $wday = 0;
my $yday = 0;

my $unixtime = mktime ($sec, $min, $hour, $day, $mon, $year, $wday, $yday);
print "$unixtime\n";

my $readable_time = localtime($unixtime);
print "$readable_time\n"

http://www.adp -gmbh.ch / perl / posix / convert_time.html )

5 голосов
/ 10 февраля 2010

Вы можете использовать Date :: Parse :

use Date::Parse;
print str2time('10/02/2010 00:00:00');

На моей машине это печатает 1285970400, что соответствует 2 октября 2010 года (я живу в +1 GMT с +1 Wintertime.)

3 голосов
/ 10 февраля 2010

Я думаю, вам нужен встроенный модуль Время :: Локальный .

2 голосов
/ 10 февраля 2010

Модуль DateTime должен быть полезен здесь. В частности, я считаю, что модуль DateTime :: Format :: Natural может анализировать предоставленную пользователем строку даты. Оттуда у вас есть объект DateTime, который вы можете распечатать или преобразовать по своему усмотрению.

1 голос
/ 10 февраля 2010

В зависимости от того, откуда исходит ваша начальная дата, вы можете проанализировать ее с помощью

Date :: Manip

и звонит

ParseDate ( "10/02/2010")

Затем вы можете взять этот вывод и преобразовать его в любой формат, какой пожелаете.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...