URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 731
[ Назад ]

Исходное сообщение
"Как получить дату в нормальном виде?"

Отправлено HAN , 06-Май-02 18:40 
Hi!
Нужно получить текущую дату. Использую
($sec,$min,$hour,$mday,$mon,$year,$wday,$ydat,$isdst)=localtime();
print "20$year -$mon -$mday\n";
получаю:
20102 -4 -6
Это так и должно быть? Ну с годом можно сотню отнять, а вот почему месяц он выдает четвертый?
ps. date на машине - Mon May  6 17:42:32 GMT 2002

Удачи!
HAN


Содержание

Сообщения в этом обсуждении
"RE: Как получить дату в нормальном виде?"
Отправлено uldus , 07-Май-02 09:50 
>Hi!
>Нужно получить текущую дату. Использую
>($sec,$min,$hour,$mday,$mon,$year,$wday,$ydat,$isdst)=localtime();

perldoc -f localtime

$mon++;
$year += 1900;



"RE: Как получить дату в нормальном виде?"
Отправлено Владислав , 19-Авг-02 01:21 
Воть вам прога .... хи хи

#include <iostream.h>
#include <sys/time.h>
#include <time.h>
#include <unistd.h>

int main()
{
   struct timeval tv;
   struct tm *ptm;
   char time_string[40];
   long milleseconds;

   gettimeofday(&tv,NULL);
   ptm = localtime(&tv.tv_sec);
   strftime(time_string, sizeof(time_string),"%Y-%m-%d %H:%M:%S", ptm);
   milleseconds = tv.tv_usec / 1000;

   cout << time_string << "." << milleseconds << '\n';
   return 0;
}