in reply to Quickest way to get the oldest file

Well, given the requirement for rapid turn-around from the web server, the best solution might be to maintain a separate database of file names and creation dates. The cross-platform requirement means you need to decide whether you want to require a cross-platform RDBM (like mysql) or just accept a certain amount of performance degradation (extra load on the server) to maintain and sort a flat-file table.

If the database approach doesn't appeal to you (don't worry -- most people would prefer not to have to do that), the response time will depend on how many files are present in any single given directory. The following sort of code ought to do what you want on either type of server:

sub get_oldest_file { my $path = shift; # name of directory to search opendir( D, $path ) or return "Unable to read directory $path\n"; my $oldest_age = 0; my $oldest_name = ''; for ( readdir( D )) { next unless ( -f "$path/$_"); my $age = ( -M _ ); # note the "_" : uses stat data loaded by +"-f" above if ( $age > $oldest_age ) { $oldest_name = $_; $oldest_age = $age; } } closedir D; return $oldest_name; }

update: naturally, you'll want to use the "File::Spec" modules when you go to cross-platform usage.