On Thu, 2010-12-02 at 10:07 -0500, Daniel P. Brown wrote: > On Wed, Dec 1, 2010 at 23:13, Kirk Bailey <kbailey@xxxxxxxxxxxxxxxx> wrote: > [snip!] > > > > Can this be improved to exclude anything with a '.' or a '-' in it's name? > > This will exclude the smileys and cgi-bin and such. If it can be persuaded > > to read a 1 line description from each subdirectory it could then use THAT > > as the text in the link, instead of the name. This could be useful in many > > settings. > > Sure. Change: > > if (is_dir($d) && $d != '.' && $d != '..') { > > To: > > if (is_dir($d) && !preg_match('/[\.\-]/',$d)) { > > Keep in mind, though, that the change will no longer show anything > that matches the below either: > > example.directory > example-directory > special-images > css.files > > In other words, you may instead want to explicitly state which > directories to omit, and then drop anything that begins with a dot as > well (hidden directories on *NIX-like boxes) like so: > > <?php > $excludes[] = 'cgi-bin'; > $excludes[] = 'vti_cnf'; > $excludes[] = 'private'; > $excludes[] = 'thumbnail'; > > $ls = scandir(dirname(__FILE__)); > foreach ($ls as $d) { > if (is_dir($d) && !preg_match('/^\./',basename($d)) && > !in_array(basename($d),$excludes)) { > echo '<li><a href="'.$d.'">'.$d.'</a><br/>'.PHP_EOL; > } > } > ?> > > -- > </Daniel P. Brown> > Dedicated Servers, Cloud and Cloud Hybrid Solutions, VPS, Hosting > (866-) 725-4321 > http://www.parasane.net/ > damn you Daniel... I was just about to reply with almost the EXACT same answer!!! I think the last example would probably be the best one to use, that way you can still have some directories with the . or - or even the _ in the names, and still be able to display them. Steve ps thanks for saving me type it all out Daniel :) -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php