/**
* function get files
* @param $path string = path to fine files in
* @param $accept array = array of extensions to accept
* @param currentLevel = 0, stopLevel = 0
* @return array of madmanFile objects, but you can modify it to
* return whatever suits your needs.
*/
public static function getFiles($path = '.', $accept, $currentLevel = 0, $stopLevel = 0){
$path = trim($path); //trim whitespcae if any
if(substr($path,-1)=='/'){$path = substr($path,0,-1);} //cutoff the last "/" on path if provided
$selectedFiles = array();
try{
//ignore these files/folders
$ignoreRegexp = "/\.(T|t)rash/";
$ignore = array('cgi-bin', '.', '..', '.svn');
$dh = @opendir($path);
//Loop through the directory
while(false !== ($file = readdir($dh))){
// Check that this file is not to be ignored
if(!in_array($file, $ignore) and !preg_match($ignoreRegexp,$file)){
$spaces = str_repeat(' ', ($currentLevel * 4));
// Its a directory, so we need to keep reading down...
if(is_dir("$path/$file")){
//merge current selectFiles array with recursion return which is
//another array of selectedFiles
$selectedFiles = array_merge($selectedFiles,MadmanFileManager::getFiles("$path/$file", $accept, ($currentLe$
} else{
$info = pathinfo($file);
if(in_array($info['extension'], $accept)){
$selectedFiles[] = new MadmanFile($info['filename'], $info['extension'], MadmanFileManager::getSize($
}//end if in array
}//end if/else is_dir
}
}//end while
closedir($dh);
// Close the directory handle
}catch (Exception $e){
echo 'Caught exception: ', $e->getMessage(), "\n";
}
return $selectedFiles;
}
duplication possible de [Charger la liste d'images du dossier] (http://stackoverflow.com/questions/758594/load-list-of-image-from-folder) et [beaucoup plus] (http: // stackoverflow .com/search? q = get + tout + images + dans + un + dossier + php) – Gordon
* (apparenté) * http://stackoverflow.com/questions/3563863/read-files-in-folder/3564311#3564311 – Gordon