в Perl как узнать текущее лондонское время? GMT компенсировано с BST Можно ли получить смещение TZ или само время для другого часового пояса? с машины NY Red Hat Linux? -Большое спасибо
use DateTime; say "UTC:\t\t" . DateTime->now->iso8601; say "London time:\t" . DateTime->now->set_time_zone("Europe/London")->iso8601;
UTC: 2011-04-24T17:45:16 London time: 2011-04-24T18:45:16
В стандартном Perl:
% env TZ=Europe/London date Sun Apr 24 19:51:24 BST 2011 % env TZ=Europe/London perl -le 'print scalar localtime' Sun Apr 24 19:51:37 2011 % env TZ=Europe/London perl -MPOSIX=strftime -le 'print strftime "%x %X %Z (%z)", localtime' 04/24/11 19:51:52 BST (+0100)
Используйте модули DateTime. У них есть все виды инструментов для вычисления даты и времени, включая поддержку часовых поясов.
DateTime
Часто задаваемые вопросы Часовые пояса помогут вам начать работу над распространенными проблемами часовых поясов.