加入收藏 | 设为首页 | 会员中心 | 我要投稿 衡阳站长网 (https://www.0734zz.cn/)- 数据集成、设备管理、备份、数据加密、智能搜索!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

PHP获取目录及子目录下所有文件名

发布时间:2022-08-03 10:13:42 所属栏目:PHP教程 来源:互联网
导读:思路:首先获取一个目录下所有文件名可以使用 scandir() 函数。scandir() 函数返回指定目录中的文件和目录的数组。因为这个返回的数据不包含子目录下文件,所以可以使用递归来处理。 复制代码 /** * @param $dir 要查找的文件路径 * @param $dir_array 存储
  思路:首先获取一个目录下所有文件名可以使用 scandir() 函数。scandir() 函数返回指定目录中的文件和目录的数组。因为这个返回的数据不包含子目录下文件,所以可以使用递归来处理。
 
  复制代码
  /**
   * @param $dir   要查找的文件路径
   * @param $dir_array    存储文件名的数组
   */
  function find_files($dir, &$dir_array)
  {
      // 读取当前目录下的所有文件和目录(不包含子目录下文件)
      $files = scandir($dir);
   
      if (is_array($files)) {
          foreach ($files as $val) {
              // 跳过. 和 ..
              if ($val == '.' || $val == '..')
                  continue;
   
              // 判断是否是目录
              if (is_dir($dir . '/' . $val)) {
                  // 将当前目录添加进数组
                  $dir_array[$dir][] = $val;
                  // 递归继续往下寻找
                  find_files($dir . '/' . $val, $dir_array);
              } else {
                  // 不是目录也需要将当前文件添加进数组
                  $dir_array[$dir][] = $val;
              }
          }
      }
  }
   
  // 调用
  $folder_list = array();
  find_files('/demo/', $folder_list);
  var_dump($folder_list);

(编辑:衡阳站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读