PHP 4.0 Bug #4968: microtime() does not work properly
| From: | waldschrott at kiffen dot de | Date: | Mon, 12 Jun 2000 02:33:23 +0000 |
| Subject: | PHP 4.0 Bug #4968: microtime() does not work properly | ||
| Groups: | php.dev | ||
| Request: | Send a blank email to php-dev+get-21070@lists.php.net to get a copy of this message | ||
From: waldschrott@kiffen.de
Operating system: win32(2000) only
PHP version: 4.0 Latest CVS (12/06/2000)
PHP Bug Type: Misbehaving function
Bug description: microtime() does not work properly
is microtime() supposed not to work under win32? If it is, there´s a serious bug in it. The
following script works as intended (it produces no lines with an *) running on Linux - the same
script under win32 fails at some points (search for "*" and exampine the values around
it)...
microtime() *seems* to work under win32, it produces a string with a micro and a timestamp part,
subsequent values are raising compared to the ancestor in the micro part - the timestamp part seems
*not* to be incremented after the micro part exceeds 0,9(period), it is incremented from time to
time - I even don´t know when, perhaps every fourth pass...
If it is not intended to work under win32 a warning should appear OR it should be implemented if
possible...
<?
for ($i=1;$i<=10000;$i++) {
list($micro,$time)=explode(" ",microtime());
$add=$micro+$time;
print ($last? ($add<$last ? '*' : '') :
'')."M\t$micro\tT\t$time\tS\t$ add<BR>";
$last=$add; }
?>