On Wed, 2002-02-06 at 15:33, Jeff Sheltren wrote: > At 10:27 AM 2/6/2002 -0500, Ben Crawford wrote: > >You also seem to have an extra equals. Your loop should read: > > > >while (false != ($file=readdir($handle))){ > > I think you could eliminate the "false !=" in the while condition... > > It should be just the same if you write > while (($file = readdir($handle))) > > right? > > -Jeff
Wrong, actually. If you have any files in that directory which have names which would evaluate as false in PHP, then your way will fail on them and you'll get a truncated directory listing. Do 'touch 0' in a directory and give it a shot; you'll see what I mean. However, the original example does the same thing, since it only checks whether the result of the readdir() evaluates to FALSE, not whether it actually is a boolean FALSE value. The correct way to do this is: while (FALSE !== ($file = readdir($handle))) { . . . } Note the !== instead of !=. Hope this helps, Torben -- Torben Wilson <[EMAIL PROTECTED]> http://www.thebuttlesschaps.com http://www.hybrid17.com http://www.inflatableeye.com +1.604.709.0506 -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php