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 .'
'; $filePath[$path . '/' . $file] = $path . '/' . $file;//把文件路径赋值给数组 } } return $filePath; }

使用

  $array = traverse("C:/ceshei");
  foreach ($array as $key => $val){
      echo $val."
";//文件路径 }


你可能感兴趣的:(php)