на главнуюВсе эхи RU.PERL
войти ?

сравнение даты и времени

От Ruslan Suleimanov (2:467/888) к Eugene Grosbein

В ответ на Заголовок предыдущего сообщения в треде (Имя Автора)


Привет, Eugene!



Ответ на сообщение Eugene Grosbein (2:5006/1) к Ruslan Suleimanov, написанное 05 авг 22 в 00:21:

EG> 04 авг. 2022, четверг, в 15:11 NOVT, Ruslan Suleimanov написал(а):

RS>> Есть дата и время именно в таком формате "Thu, 04 Aug 2022
RS>> 12:50:30 +0300"(которая может меняться) в переменной $a1
RS>> необходимо сравнить ее с переменной $b1 и вывести например print
RS>> "Old"; если переменная $b1 позже по дате и времени $a1 и print
RS>> "New"; если раньше по дате и времени.

EG> Стандартный подход в таких случаях - перевод сравниваемых дат
EG> в формат целого числа под названием unixtime - количество
EG> секунд, прошедших с полуночи 1 января 1970 года (отрицательное число,
EG> если дата до этого момента). Затем значения просто сравниваются,
EG> как целые числа.

EG> Для перевода есть готовые модули типа Date::Parse с функцией
EG> $unixtime = str2time($string);

EG> В доке на этот модуль описаны автоматически распознаваемые форматы дат
EG> и твой формат среди них есть (четвертый пример):

очень толковый модуль, проверил работает! :) Еще бы можно было также переводить из unixtime в человекочитаемый..
хотя я нашел вариант в базе хранить сразу две даты.. пока так. Спасибо!




WBR, Ruslan Suleimanov.
JabberID: rs@captflint.com
--- GoldED+/FreeBSD/..I LIKE UNIX EVERYDAY..
* Origin: ---/RS/FIDO Druzi 199x fido.odessa.ua/ (2:467/888)

Ответы на это письмо:

From: Username
Заголовок следующего сообщения в треде может быть длинным и его придется перенести на новую строку

From: Username
Или коротким

FGHI-url этого письма: area://RU.PERL?msgid=2:467/888+62ed3b2a