On 26 August 2008 17:15, James Ausmus advised: > On Tue, Aug 26, 2008 at 8:57 AM, Ford, Mike > <M.Ford@xxxxxxxxxxxxxx> wrote: >> On 25 August 2008 00:54, Govinda advised: > > <snip> > >> Personally, I might be tempted to do something like this: >> >> if (($pos = strrchr($file, '.'))!==FALSE): >> switch (strtolower(substr($file, $pos))): >> case '.gif': >> case '.png': >> case '.jpg': >> case '.jpeg': >> echo $file; >> endswitch; >> endif; > > <snip> > > Of course, this could be simplified *slightly* by actually taking > advantage of the loose typing of PHP - change the above if statement to: > > if (($pos = strpos($file, '.'))) > { > $restOfAboveCodeHere; > } > > This way, if the file is the '.' or '..' files, then you will get a 0 > for the position of the '.', which will evaluate to FALSE. All other > files will return a non-zero position of the '.' char, which will > evaluate to TRUE. Also, I would believe (but have no evidence at all > of) that a forward-looking string position search will be very > slightly faster than a strrchr search - dunno for certain, and don't > care enough to code up a couple-line test, but just my gut... ;) The problem with that is that a file called, say, site.logo.jpg will fail the subsequent tests, since the substr() on the next line will return '.logo.jpg'. (And whilst it is vanishingly improbable, it is _just_ possible for someone to supply a file called .gif !!!!! ;) Cheers! Mike -- Mike Ford, Electronic Information Developer, C507, Leeds Metropolitan University, Civic Quarter Campus, Woodhouse Lane, LEEDS, LS1 3HE, United Kingdom Email: m.ford@xxxxxxxxxxxxxx Tel: +44 113 812 4730 To view the terms under which this email is distributed, please go to http://disclaimer.leedsmet.ac.uk/email.htm -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php