Re: array from folder

From: Date: Mon, 25 Apr 2005 19:50:49 +0000
Subject: Re: array from folder
References: 1  Groups: php.general 
Request: Send a blank email to php-general+get-213827@lists.php.net to get a copy of this message
* Ed Dorsch <edorsch@uoregon.edu>: > Can PHP generate an array based on file names in a folder? > > For example, if I have a folder called "photos" that includes three > files -- tree.jpg, house.jpg and boat.jpg -- can PHP "look" at the > file and generate a variable $photos = array ("tree", > "house","boat"). Any ideas for how to "sniff" out a folder to > determine how many files are in it and then create an array with the > file names in it? You might want to try PEAR's File_Find package. With it, you could pass a pattern to match, and receive an array of files that match. You could then use array_map() to strip the suffix: include_once 'File/Find.php'; function photo_basename($file) { list($name, $sfx) = explode('.', basename($file), 2); return $name; } $photos = &File_Find::glob('/.*\.(jpg|png|gif)$/i', 'photos', 'perl'); $photos = array_map('photo_basename', $photos); To determine the number of files, simply do a count() on the $photos array. -- Matthew Weier O'Phinney | WEBSITES: Webmaster and IT Specialist | http://www.garden.org National Gardening Association | http://www.kidsgardening.com 802-863-5251 x156 | http://nationalgardenmonth.org mailto:matthew@garden.org | http://vermontbotanical.org

« previous php.general (#213827) next »