Forum Webscript.Ru
Программирование => Perl => Тема начата: Dart Sidius от 01 Апреля 2003, 16:30:03
-
Возник такой вопрос...например есть какое-то кол-во секунд....например 5420.....как можно изъять сколько это времени в часам, минутах, секундах...и т.п. Я имею в виду есть ли какой модуль в перле?
-
Ты бы вместо многоточий более конкретно задачу поставил.
Пока я не понимаю при чем тут модуль.
-
Dart Sidius
можно количество секунд, прошедших с 1970 года преобразовать в символы (год-месяц-число-час-минута-секунда).
функция называется localtime.
А почему нельзя просто "руками" поделить? ;)
вроде того:
$sec = time % 60; и т.д.?
-
Можно но у меня всё время какая-то лажа получается....не точно...
-
NeoNox:
Ты бы вместо многоточий более конкретно задачу поставил.
Пока я не понимаю при чем тут модуль.
Ладно изъясняю подробней. Есть какое-то кол-во секунд...например: 40323...как мне преобразовать данные секунды в формат кол-во лет:месяцев:дней:часов:минут:секунд ....тоесть это как статистика...юзер провёл на сайте столько-то...
-
Dart Sidius
Спасибо за изяснение.
Можно написать и компактнее, но смысл будет понятен из такого куска.
deltatime("40323");
sub deltatime{
my $time = shift;
print $time;
my $htime = $time/(60*60);
$htime =~ /(.*?)\\.(.*)/;
my $hours = $1;
my $mtime = ($time - $hours*(60*60))/60;
$mtime =~ /(.*?)\\.(.*)/;
my $minutes = $1;
my $sec = (".$2"*60);
print "Hours - $hours Minutes - $minutes Seconds - $sec\\n";
}
Никаких модулей - только немного подумать
-
Perl Cookbook
print delta_time(40323);
sub delta_time {
my $difference = shift;
my ($hours, $minutes, $seconds);
$seconds = $difference % 60;
$difference = ($difference - $seconds) / 60;
$minutes = $difference % 60;
$difference = ($difference - $minutes) / 60;
$hours = $difference % (24*60);
return "$hours hours, $minutes munutes, $seconds seconds";
}
-
> как мне преобразовать данные секунды в формат кол-во лет:месяцев:дней:часов:минут:секунд
С днями, часами, минутами и секундами понятно. А вот "месяц" - это что за зверь? Они ведь бывают от 28 дней до 31 дня, а еще лунные, астрономические и возможно еще какие-нибудь.
-
месяц возьми среднее число 30 дней, если тебе действительно надо посчитать сколько времени был юзер.
-
...юзер провёл на сайте столько-то... лет:месяцев:...
гыы :)
perldoc Date::Calc