in reply to time() function
This is because time is using a 32 bit integer and you are getting an overflow truncation like you do in say C. Here is a demo of what happens:
$time = time(); $odd = time * 1000; print "$time|$odd\n"; print "2**31 is ", 2**31, "\n"; $time1000 = $time *1000; $time1000 %= 2**31; print "Here is our number: $time1000\n"; print "End of *nix epoch is at: ", scalar gmtime (2**31-1)
The maximum integer value that time will hold is 2**31 or 2147483648. As $time1000 is much bigger than this we get overflow tructation. We simulate this with modulus % and lo and behold produce the same number.
cheers
tachyon
s&&rsenoyhcatreve&&&s&n.+t&"$'$`$\"$\&"&ee&&y&srve&&d&&print
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: Re: time() function
by IraTarball (Monk) on Sep 28, 2001 at 22:07 UTC | |
by tachyon (Chancellor) on Sep 28, 2001 at 22:48 UTC |