On 26 August 2008 17:15, James Ausmus advised:
> On Tue, Aug 26, 2008 at 8:57 AM, Ford, Mike
> <[EMAIL PROTECTED]> 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: [EMAIL PROTECTED]
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