首页后端开发PHP如何利用PHP获取某一目录下的所有文件

如何利用PHP获取某一目录下的所有文件

时间2024-03-24 21:34:03发布访客分类PHP浏览1012
导读:这篇文章给大家分享的是“如何利用PHP获取某一目录下的所有文件”,文中的讲解内容简单清晰,对大家认识和了解都有一定的帮助,对此感兴趣的朋友,接下来就跟随小编一起了解一下“如何利用PHP获取某一目录下的所有文件”吧。 获取某目录下所有...
这篇文章给大家分享的是“如何利用PHP获取某一目录下的所有文件”,文中的讲解内容简单清晰,对大家认识和了解都有一定的帮助,对此感兴趣的朋友,接下来就跟随小编一起了解一下“如何利用PHP获取某一目录下的所有文件”吧。

获取某目录下所有子文件和子目录

function getDirContent($path){

  if(!is_dir($path)){
    
    return false;

  }
    
  //readdir方法
  /* $dir = opendir($path);
    
  $arr = array();

  while($content = readdir($dir)){
    
    if($content != '.' &
    &
 $content != '..'){
    
      $arr[] = $content;

    }

  }
    
  closedir($dir);
     */

  //scandir方法
  $arr = array();
    
  $data = scandir($path);

  foreach ($data as $value){
    
    if($value != '.' &
    &
 $value != '..'){
    
      $arr[] = $value;

    }

  }
    
  return $arr;

}
    

下面介绍的三种方法,是获取某个目录下所有的目录(包括子目录,子孙目录)和文件,直到最里层

方法一

function searchDir($path,&
$files){


  if(is_dir($path)){
    

    $opendir = opendir($path);


    while ($file = readdir($opendir)){
    
      if($file != '.' &
    &
 $file != '..'){
    
        searchDir($path.'/'.$file, $files);

      }

    }
    
    closedir($opendir);

  }

  if(!is_dir($path)){
    
    $files[] = $path;

  }

}

//得到目录名
function getDir($dir){
    
  $files = array();
    
  searchDir($dir, $files);
    
  return $files;

}
    
$filenames = getDir('lss');


foreach ($filenames as $value){
    
  echo $value.'br/>
    ';

}
 

方法二:

function getDir($path){


  if(is_dir($path)){
    

    $dir = scandir($path);

    foreach ($dir as $value){
    
      $sub_path =$path .'/'.$value;

      if($value == '.' || $value == '..'){
    
        continue;

      }
else if(is_dir($sub_path)){
    
        echo '目录名:'.$value .'br/>
    ';
    
        getDir($sub_path);

      }
else{
    
        //.$path 可以省略,直接输出文件名
        echo ' 最底层文件: '.$path. ':'.$value.' hr/>
    ';

      }

    }

  }

}
    
$path = 'lss';
    
getDir($path);
 

方法三:

function getDir($path){
    
  $arr = array();
    
    $arr[] = $path;

  if(is_file($path)){


  }
else{

    if(is_dir($path)){
    
      $data = scandir($path);

      if(!empty($data)){

        foreach ($data as $value){
    
          if($value != '.' &
    &
 $value != '..'){
    
            $sub_path = $path."/".$value;
    
            $temp = getDirContent($sub_path);
    
            $arr = array_merge($temp,$arr);

          }
          
        }


      }

    }

  }
    

  return $arr;

}
    
$path = 'lss';
    
var_dump(getDir($path));
    

关于“如何利用PHP获取某一目录下的所有文件”的内容就介绍到这,感谢各位的阅读,相信大家对如何利用PHP获取某一目录下的所有文件已经有了进一步的了解。大家如果还想学习更多知识,欢迎关注网络,小编将为大家输出更多高质量的实用文章!

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: 如何利用PHP获取某一目录下的所有文件
本文地址: https://pptw.com/jishu/652332.html
oracle查询时间的语句有什么?日期格式怎样转化? 如何用PHP实现无极分类菜单效果

游客 回复需填写必要信息