`

递归显示当前目录树,可自定义结点标记

    博客分类:
  • php
阅读更多
//静态层级数
static $i = 0;

//递归目录
function showfile($dir){
	global $i;
	$d = dir($dir);
	//echo "Handle: " . $d->handle . "\n";
	//echo "Path: " . $d->path . "\n";
	$i++;
	$space = printSpace($i);
	while ( false !== ($entry = $d->read ()) ) {
		//echo $entry . "<br />";
		//echo "<font color=red>".$dir."/".$entry."</font><br/>";
		if($entry!='.' && $entry!='..' && is_dir($dir."/".$entry)){
			echo "<font color=red>".$space.$entry."</font><br/>";
			showfile($dir."/".$entry);
		}else{
			if(is_file($dir."/".$entry)){
				echo $space.$entry."<br/>";
			}
		}
	}
	$d->close ();
	$i--;
	
}

//自定义输出层级标记,默认-
function printSpace($num,$concatStr='-'){
	for($i=0;$i<$num;$i++){
		$str.=$concatStr;
	}
	return $str;
}

//示例:  当前目录
showfile(dirname(__file__));

 

输出如下格式(红色为目录):

 

-.project
-.buildpath
-.settings
--org.eclipse.php.core.prefs
--org.eclipse.core.resources.prefs
-client.php
-example.php
-FZAPI.php
-rsa
--testrsa.php
--rsa.php
--ssl-key
---priv.key
---pub.key
-phpinfo.php


....

分享到:
评论

相关推荐

    递归显示数据库目录树+BBS

    在显示数据库目录树的情况下,递归通常用于遍历文件系统的目录结构,逐级展示每个目录及其子目录的内容。 数据库目录树的表示通常使用树形结构,其中每个节点代表一个目录或文件,包含其名称、路径和子节点(子目录...

    递归显示数据库目录树(html+java servlet)

    在IT领域,数据库目录树的递归展示是一项常见的任务,特别是在构建Web应用程序时。这个案例中,我们将讨论如何使用HTML和Java Servlet技术来实现这一功能。`递归显示数据库目录树(html+java servlet)`的主题主要涉及...

    题目:编写递归算法,将二叉树中所有结点的左右子树相互交换 - READ.doc

    该算法的核心是使用递归函数来交换二叉树中所有结点的左右子树,从而实现树形结构中结点的交换。该算法的设计和实现主要涉及到树形结构、递归函数和指针操作等多个方面。 二、树形结构知识点 * 树形结构是一种常用...

    编写递归算法,计算二叉树中叶子结点的数目

    编写递归算法,计算二叉树中叶子结点的数目

    使用递归生成文件目录树

    ### 使用递归生成文件目录树 #### 概述 在计算机科学中,文件系统的组织结构通常采用树形结构表示,其中根目录为树的根节点,而子目录和文件则作为分支节点。为了清晰地展示文件系统中的层级关系,本篇文章将介绍...

    linux 目录树实现代码递归

    本篇将深入探讨如何使用递归算法在C语言中实现Linux目录树的遍历。 首先,我们需要理解递归的概念。递归是一种解决问题的方法,它通过调用自身来解决子问题,直到达到基本情况。在处理目录树时,我们可以把根目录视...

    在JSP中使用递归算法生成目录树

    在目录树中,每个目录都可以看作是一个节点,如果一个目录包含其他目录,那么这些目录就是当前目录的子节点。递归算法可以遍历这些节点,生成相应的HTML代码来展示目录树。 2. 实现步骤: - 数据准备:首先,你...

    C#非递归后序遍历文件目录树

    对于C#开发者来说,理解如何非递归地后序遍历文件目录树是非常有用的技能。后序遍历通常指的是先访问子节点,再访问父节点的遍历顺序。这种遍历方式在处理复杂的文件结构时尤其有用,例如在计算文件大小、执行清理...

    .net ,递归写自定义树

    在.NET开发中,构建自定义树形结构是一种常见的需求,特别是在网页UI设计中,用于展现层级关系的数据。这里我们关注的是使用jQuery控件配合后台.NET代码来递归构造树形结构。递归是一种强大的编程技术,它允许函数或...

    递归动态树递归动态树

    递归动态树递归动态树递归动态树递归动态树递归动态树递归动态树递归动态树递归动态树递归动态树递归动态树递归动态树递归动态树递归动态树递归动态树递归动态树递归动态树递归动态树递归动态树递归动态树递归动态树...

    递归遍历目录并生成树

    在给定的标题“递归遍历目录并生成树”中,涉及的核心技术是递归算法和Windows API的使用,特别是与文件系统交互的部分。这个任务可以通过使用MFC(Microsoft Foundation Classes)中的`CTreeCtrl`控件来实现,它...

    Java递归算法构造JSON树形结构

    Java 递归算法构造 JSON 树形结构 Java 递归算法构造 JSON 树形结构是指通过 Java 语言使用递归算法将数据库中的菜单表构建成树形的 JSON 格式发送给第三方。这种方法可以将复杂的树形结构数据转换成易于理解和处理...

    二叉树的操作--递归非递归遍历、结点个数、树深度

    遍历递归的先中後序, 非递归的先中後序, 计算出深度 结点数 /* 运行结果: ------------------------ 请先序输入二叉树(如:ab三个空格表示a为根节点,b为左子树的二叉树) ab c 先序递归遍历二叉树: a b c 先序...

    sql自定义递归方法

    在SQL中实现自定义递归方法,是一种高效处理层次结构数据的强大工具。本文将深入探讨一个具体的案例,即如何利用SQL自定义函数实现对部门层级数据的递归查询,这不仅能够帮助我们更好地理解SQL递归函数的工作原理,...

    分页+递归显示分页+递归显示

    递归是一种编程技术,用于处理具有层级结构的数据,如树形目录、组织架构或文件系统。在分页场景中,递归通常用于在下拉框或其他组件中以树状结构呈现数据,以便用户可以展开和折叠各个层级。 1. **节点表示**:每...

    c语言 二叉树应用:创建、递归非递归遍历、计算结点、分支、交换子树

    可实现: 输入相应元素,用先序创建二叉树(无元素处用“#”) 递归先序遍历二叉树: 递归中序遍历二叉树: 递归后序遍历二叉树: 非递归先序遍历二叉树: 非递归中序遍历二叉树: 非递归后序遍历二叉树: ...

    树结点递归添加-VB.NET

    在VB.NET编程中,"树结点递归添加"是一个常见的操作,特别是在构建类似资源管理器的界面或处理文件系统目录结构时。递归是一种强大的编程技术,它允许函数调用自身来解决复杂的问题,特别适合处理具有层级关系的数据...

Global site tag (gtag.js) - Google Analytics