Hi,
I have written some routines unix time to human readable time and the
other way around.. but..
ah.. the routines seems to work now (I can't remember what I
changed).. The problem was that
>> print unixtime-to-time time-to-unixtime now print now
16-Aug-2000/15:29:11+1:00
16-Aug-2000/15:29:12+1:00
returned alot different times (about 2 minutes in difference)..
/PeO
--
/* P-O Yliniemi, Bizlink Systems & Development AB *\
\* [EMAIL PROTECTED] | Solaris (SunOS 5.6-5.8), Perl, REBOL | [EMAIL PROTECTED] */
/* +46-70-4663336 | CGI, (S)HTML, PHP, sql | +46-70-5685919 *\
\* | Apache, qmail, squid, BIND, IPFilter | +46-911-205474 */
REBOL []
unixtime-to-time: func [
{Convert from unix time to human readable date/time}
unixtime [integer!] "Seconds since 1-Jan-1970 0:00"
/local days resttime
] [
days: unixtime / 3600 / 24
resttime: to-time rejoin ["0:0:" to-integer (days - to-integer days) * 3600 * 24]
return to-date rejoin [
(01-Jan-1970 + to-integer days) "/" (resttime + now/zone)
either negative? now/zone [ rejoin ["-" now/zone]] [ rejoin ["+" now/zone]]
]
]
time-to-unixtime: func [
{Convert from human readable date/time to unix time}
date [date!] "Date/time to convert"
/local daysec
] [
date: date
daysec: (date - 1-Jan-1970) * 3600 * 24
if date/time [date: date - date/zone daysec: daysec + (date/time/hour * 3600) +
(date/time/minute * 60) + (to-integer date/time/second)]
return daysec
]