PERL: БИБЛИОТЕКА ПРОГРАММИСТА


PERL: БИБЛИОТЕКА ПРОГРАММИСТА - стр. 98


Секунды изменяются в интервале 0-60 с учетом возможных корректировок; под влиянием стандартов в любой момент может возникнуть лишняя секунда.

В дальнейшем совокупность «день/месяц/год/час/минута/секунда» будет обо­значаться выражением «полное время» — хотя бы потому, что писать каждый раз «отдельные значения дня, месяца, года, часа, минут и секунд» довольно утомитель­но. Сокращение не связано с конкретным порядком возвращаемых значений.

Perl не возвращает данные о годе в виде числа из двух цифр. Он возвращает разность между текущим годом и 1900, которая до 1999 года представляет собой число из двух цифр. У Perl нет своей «проблемы 2000 года», если только вы не изобретете ее сами (впрочем, у вашего компьютера и Perl может возникнуть про­блема 2038 года, если к тому времени еще будет использоваться 32-разрядная ад­ресация). Для получения полного значения года прибавьте к его представлению 1900. Не пользуйтесь конструкцией 19$уеаг", или вскоре ваши программы начнут выдавать «год 19102». Мы не можем точно зафиксировать интервал года, потому что все зависит от размера целого числа, используемого вашей системой для пред­ставления секунд с начала эпохи. Малые числа дают небольшой интервал; боль­шие (64-разрядные) числа означают огромные интервалы.

' Скорее, менее В момент написания книги функция возвращала на 21 секунду меньше В соответ­ствии со стандартом POSIX функция time не должна возвращать секунды, которые накапливаются из-за замедления вращения Земли, обусловленного воздействием приливов За дополнительной ин­формацией обращайтесь к разделу 3 sci astro FAQ по адресу http //astrosun tn Cornell edu/students/ lazio sci astro 3 FAQ


96   Глава 3 • Дата и время

В скалярном контексте localtime и gmtime возвращают дату и время, отформа­тированные в виде ASCII-строки:

Fri  Apr   11   09:27:08   1997

Объекты стандартного модуля Time::tm позволяют обращаться к компонентам даты/времени по именам. Стандартные модули Time::localtime и Time::gmtime пе­реопределяют функции localtime и gmtime, возвращающие списки, и заменяют их версиями, возвращающими объекты Time::tm. Сравните два следующих фрагмента:




Начало  Назад  Вперед