Функции для работы с датой и временем

Функция time о возвращает количество секунд, прошедшее с 1 января 1970 г.:
print time (); # Вьгоедет примерно 1211129478
Функция gmtimeo возвращает массив значений даты и времени, аргументом является количество секунд, полученное с помощью функции time о. Соот¬ветствует временной зоне Гринвича:
@mass = gmtime (time () ) ; for($i=0;$i<@mass;$i++) { print $mass[$i], "<BR>";
}
Функция localtime о возвращает массив значений даты и времени, аргумен¬том является количество секунд, полученное с помощью функции time о. Со¬ответствует зоне местного времени:
@mass = localtime (time ()) ; for($i=0;$i<@mass;$i++) { print $mass[$i], "<BR>";
}
Функции gmtimeo и localtime о возвращают массив следующих значений:
• о — секунды (от 0 до 59);
• 1 — минуты (от 0 до 59);
• 2 — часы (от 0 до 23);
• з — число месяца (от 1 до 31);
• 4 — месяц (0 — для января, 11 — для декабря);
• 5 — год. К полученному значению необходимо прибавить 1900;
• б — день недели (0 — для воскресенья, 6 — для субботы);
• 7 — порядковый номер дня в году (от 0 до 365).
Выведем текущую дату и время таким образом, чтобы день недели и месяц были написаны по-русски:

#!/usr/bin/perl -w
# Выводим все сообщения об ошибках
# в окно Web-браузера

use CGI::Carp qw(fatalsToBrowser); print "Content-type: text/html\n\n";
0day = ("воскресенье", "понедельник", "вторник", "среда", "четверг", "пятница", "суббота");
0month = ("января", "февраля", "марта", "апреля", "мая", "июня",
"июля", "августа", "сентября", "октября", "ноября", "декабря");
0date = localtime(time ());
$year = $date[5] + 1900;
$date = "Сегодня<ВЮ>";
$date .= $day[$date[6]];
$date .= " " . $date[3] . " ";
$date .= $month[$date [4] ].;
$date . $year . " ";
if (length($date[1]) ==1) {
$date[l] = "0" . $date[l];
}
if (length($date[0]) == 1) {
$date[0] = "0" . $date[0];
}
$date .= $date[2] . ":" * $date[l] . ":" . $date[0]; print $date;
Вывод:
Сегодня
воскресенье 18 мая 2008 20:53:54
Если в функциях gmtime о и localtime о указан параметр, то дата будет не текущая, а соответствующая значению этого параметра. Например, в функ¬ции можно передать количество секунд, прошедших с 1 января 1970 г., и по¬лучить любое другое форматирование даты:
0date = localtime(1189210561);
Для форматирования даты и времени можно воспользоваться функцией
strftimeo ИЗ МОДУЛЯ POSIX.


Страница: 1 | 2


Web сайты на Perl и MySql