What use are you putting the result to?
What I'm doing is simulating a browser transaction and one of the required parameters is epoch time in milliseconds. I don't actually need the result to be millisecond accurate. I just need to pass a 13-digit number with no decimals as one of the parameters in the request. While millisecond accuracy would be nice, all I really need is for the number to be the right number of digits and for the value to be accurate to within a minute or two.
Why not use the scalar context floating point result instead of a nasty string concatenation that will fail in nasty ways about 1/10th of the time?
Ah! I think I get it:
One line, no sprintf, and it's definitely a number so a potential future s/printf won't choke.use Time::HiRes qw(gettimeofday); my $timestamp = int (gettimeofday * 1000); print STDOUT "timestamp = $timestamp\n"; exit; Output: timestamp = 1227593060768
"What do I want? I'm an American. I want more."