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