php递归遍历指定目录下的所有文件。
<?php
/**
* 递归查找目录下所有文件。
* site: http://www.jb200.com
*/
function scanfiles($dirs,$path='',$root,&$files,&$options){
if($dirs==false){
return ;
}
foreach($dirs as $val){
if($val=='.' || $val=='..' || in_array($val,$options['exclude'])){
continue;
}
if(is_file($root.'/'.$path.$val)){
$files[]['name']=$path.$val;
}elseif(is_dir($root.'/'.$path.$val)){
if(empty($path)){
$nextpath=$val.'/';
}else{
$nextpath=$path.$val.'/';
}
$dir=$root.'/'.$nextpath;
scanfiles(@scandir($dir),$nextpath,$root,$files,$options);
}
}
}
?>