PHP - Optimizing Recursive Method
I answered this moments ago, but same applies

https://stackoverflow.com/questions/8108175/php-usleep-to-prevent-script-timeout/8108229#8108229

If you simply use : $handle = opendir($working_dir); you can find yourself waiting for the script to timeout on non existing directories. So atleast use:

if (! $handle = opendir($working_dir)) 
  exit(0);


Its generally way faster to just check if functions are even possible before you start them, although it might feel like your implementing way to many if statements, but if statements are fast and most errors are not ;)