ID:               40970
 User updated by:  php at edwardk dot info
 Reported By:      php at edwardk dot info
 Status:           Bogus
 Bug Type:         Performance problem
 Operating System: Windows 2003
 PHP Version:      5.2.1
 New Comment:

I have modified the code to use, $blah = stat('.htaccess');
This file does exist, it is 161 bytes on NTFS.

PHP 4.4.6: 1.641ms
PHP 5.1.2: 108.29ms

Normally, I would be using the commands on many small files (400ish) in
the current folder to determine if any of them had changed. This was
fast enough on PHP4, but on PHP5, the same code takes much longer.


Previous Comments:
------------------------------------------------------------------------

[2007-04-01 14:44:02] [EMAIL PROTECTED]

This is only the case when stat() fails.

If you change stat('.'); to stat('<some file>'); you will se that PHP5
is faster than php4. Almost 2x.

------------------------------------------------------------------------

[2007-04-01 00:16:16] php at edwardk dot info

Description:
------------
filemtime and other related functions are slower on php5 vs php4

Using PHP 5.2.1 and PHP 4.4.6 on Athlon X2 3800+, Windows 2003
the speed difference is about 50-100x slower.



Reproduce code:
---------------
<?
header('Content-type: text/plain');
function microtime_float()
{
    list($usec, $sec) = explode(" ", microtime());
    return ((float)$usec + (float)$sec);
}

$time_start = microtime_float();
for ($i = 1; $i <= 1000; $i++) {
    $blah = stat('.');
}
$time_end = microtime_float();
$time = $time_end - $time_start;
echo 'Took '.round(($time*100),3).'ms';
?>

Expected result:
----------------
Speeds should be similar

Actual result:
--------------
On PHP 4.4.6, it took about 1.6ms
On PHP 5.2.1 it took about 130ms


------------------------------------------------------------------------


-- 
Edit this bug report at http://bugs.php.net/?id=40970&edit=1

Reply via email to