php遍历文件夹下面的所有文件,得到文件路径
直接上代码:
$filePath = array();//文件路径数组
function traverse($path = '.') {
global $filePath;//得到外部定义的数组
$current_dir = opendir($path); //opendir()返回一个目录句柄,失败返回false
while(($file = readdir($current_dir)) !== false) { //readdir()返回打开目录句柄中的一个条目
$sub_dir = $path . DIRECTORY_SEPARATOR . $file; //构建子目录路径
if($file == '.' || $file == '..') {
continue;
}else if(is_dir($sub_dir)) { //如果是目录,进行递归
echo 'Directory ' . $file . ':'; //如果是文件夹,输出文件夹名称
traverse($sub_dir); //嵌套遍历子文件夹
}else{ //如果是文件,直接输出路径和文件名
echo 'File in Directory ' . $path . '/' . $file .'<br/>';
$filePath[$path . '/' . $file] = $path . '/' . $file;//把文件路径赋值给数组
}
}
return $filePath;
}
使用
$array = traverse("C:/ceshei");
foreach ($array as $key => $val){
echo $val."<br/>";//文件路径
}