`
wudikua123
  • 浏览: 63288 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

php 深度优先递归输出路径下所有文件

 
阅读更多
<?php 

    $dir = "/home/mengjun/IdeaProjects/phone/original-data/data/jiangsu";
    fun($dir,0);
    function fun($dir,$dep){
        $floders  = array();
        $files = array();
        if (is_dir($dir)) {
           $temp = scandir($dir,$dep);
           foreach($temp as $t){
                if(is_dir($dir.'/'.$t)){
                    if($t[0]!='.'){
                        $floders[] = $dir.'/'.$t; 
                    }
                }else{
                    $files[] = $dir.'/'.$t;
                }
           }
          
           $tab = '';
           for($i = 0;$i<$dep;$i++){
                    $tab .= '&nbsp&nbsp&nbsp&nbsp';
           }
           foreach($floders as $f){
                echo $tab.'floder: '.$f.'<br>';
                fun($f,++$dep);
           }
           foreach($files as $f){
                echo $tab.'file: '.$f.'<br>';
           }

           
        }
   
    }

?>
分享到:
评论

相关推荐

    php 递归遍历一个文件下的文件及子文件夹.txt

    在本例中,我们通过递归函数`RecursiveShowDir`遍历指定目录下的所有文件和子目录。 ### 重要知识点解析: #### 1. 函数定义:`RecursiveShowDir($dir, $layer)` - **参数**: - `$dir`:当前正在遍历的目录路径...

    导出路径文件,导出指定文件夹,批量复制文件,文件夹导出带路径工具

    这个工具是由PHP编程语言开发的,它允许用户快速、便捷地导出指定文件夹中的所有文件,并且每个文件的路径都会一并包含在内。这样的功能对于备份、迁移或者整理文件系统非常实用。 PHP是一种广泛使用的服务器端脚本...

    PHP使用递归方式列出当前目录下所有文件的方法

    具体到给定的文件内容,这里使用了一个名为`filelist`的递归函数来列出指定路径下的所有文件和目录。函数接收两个参数:`$pathname`是待列出内容的路径,`$i`是递归深度,用于控制缩进量。 详细步骤如下: 1. 打开...

    PHP递归遍历指定目录的文件并统计文件数量的方法

    1. 使用递归函数实现深度遍历:由于文件系统的目录结构往往是树形的,一个目录下可以包含多个子目录和文件,要实现对所有目录和文件的遍历,使用递归函数是简洁且有效的方式。 2. 引用传递参数:在递归函数中,引用...

    PHP递归遍历指定文件夹内的文件实现方法

    本文将详细介绍如何使用PHP编写一个递归遍历指定文件夹内所有文件的函数。 首先,了解几个PHP中用于处理文件和目录的基本函数: 1. `dirname()`:这个函数接收一个完整的文件或目录路径,然后返回不含文件名的路径...

    用PHP实现递归循环每一个目录

    在使用PHP进行文件系统操作时,经常需要遍历目录来处理文件和子目录。...同时,该方法在处理大型文件系统时,需要注意程序的性能优化,比如通过限制递归深度或增加缓存机制来避免不必要的性能开销。

    PHP实现无限级分类(不使用递归)

    在PHP中实现无限级分类通常会涉及递归算法,但是递归对性能有一定要求,并且可能受限于调用栈的深度。为了解决这些问题,我们可以采用非递归的方式来实现无限级分类。这种方法在数据库设计中通常采用的是父子结构,...

    php递归遍历多维数组的方法

    递归遍历可以处理任意深度的嵌套数组。递归遍历多维数组的关键在于首先检测当前处理的元素是否是数组,如果是,则递归进入该数组;如果不是,则进行处理(比如打印输出)。递归函数通常需要一个终止条件以避免无限...

    PHP学习笔记之目录与文件操作

    `scandir()`可以列出指定目录下的所有文件和子目录。`chdir()`函数用于改变当前工作目录,这对执行相对路径操作时非常有用。 在处理文件和目录时,权限管理是不可忽视的部分。`chmod()`函数允许我们改变文件或目录...

    PHP实现深度优先搜索算法(DFS,Depth First Search)详解

    总结来说,PHP实现的深度优先搜索算法通过递归方式遍历图或树结构,从一个起始节点开始,深入探索其子节点,直至所有可达节点都被访问。在提供的代码示例中,`Search_Method`类及其`dfs()`方法详细地展示了如何在PHP...

    php+mysql不用递归实现的无限级分类实例(非递归)

    在PHP中,我们可以遍历查询结果,利用`substr_count()`函数计算逗号的数量,以确定分类的深度,然后输出适当数量的空格或特殊字符以创建层级效果。以下是一个简单的PHP示例: ```php $sql = "SELECT * FROM tree ...

    PHP采用自定义函数实现遍历目录下所有文件的方法

    使用`readdir()`的自定义函数`listDir()`可以通过递归的方式遍历指定目录下的所有文件和子目录。在`listDir()`函数中,首先检查传入的路径是否为目录,如果该目录可读,则打开该目录。接下来进入一个循环,循环中...

    php递归函数中使用return的注意事项

    正确的做法是在递归函数的每一个返回路径上都要用return语句返回相应的值。这就意味着,不仅仅是在满足终止条件时要返回一个值,在递归调用后同样需要返回其结果。当编写递归函数时,开发者应该检查每一个逻辑分支,...

    PHP树结构,实现无限分级

    无限级分类是指在树结构中节点可以有任意多的子节点,没有预设的最大深度。在本文中,我们将深入探讨如何使用PHP来实现无限级分类的树形结构,并通过实际的代码示例来展示其工作原理。 首先,我们需要理解树结构的...

    全排列(多种算法实现)

    - 当所有元素都在排列数组中出现过一次时,输出当前排列并继续下一轮循环。 3. **堆栈实现** 堆栈可以用来保存中间状态,使得我们能够方便地进行回溯。基本步骤如下: - 将序列的所有元素压入堆栈,同时记录每个...

    php写一个函数,实现扫描并打印出自定目录下(含子目录)所有jpg文件名

    在PHP中实现扫描指定目录及其子目录下所有jpg文件的功能需要涉及到文件操作和递归函数的知识。以下是基于提供的文件内容详细解释的知识点: 1. 函数定义: 在PHP中定义函数使用关键字`function`,函数名可以自定义...

    php 删除无限级目录与文件代码共享

    `del_path` 类提供了一个递归方法 `wm_chief_delpath()` 来删除指定路径下的所有目录和文件。此外,还提供了两个辅助函数 `wm_chief_file()` 和 `wm_chief_path()` 分别用于删除文件和目录。 #### 二、`wm_chief_...

Global site tag (gtag.js) - Google Analytics