热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

php显示WEB目录下的所有目录及后缀为php,php3,htm,html的文件名-PHP源码

本程序可以显示WEB目录下的所有目录及后缀为php,php3,htm,html的文件名,并可以查看源文件,很适合作为编写php程序的工具。
本程序可以显示WEB目录下的所有目录及后缀为php,php3,htm,html的文件名,并可以查看源文件,很适合作为编写php程序的工具。

第一个文件名为 phplist.inc

代码如下
global $htmlroot;
$htmlroot="/web/html"; //"/web/html"是apache的文档根目录,用户可以根据自己的配置修改
?>

第二个文件名为 codeshow.php

代码如下
highlight_file($filename); //高亮显示文件代码
?>

这个是主程序名为 phplist.php

代码如下
require ("phplist.inc");
if ($rootpath=="") {$rootpath=$htmlroot;}
function filelist($pathname){ //遍历所有的文件和目录,$pathnam为起始目录,$searchs为搜索关键字
global $htmlroot;
if (eregi("[/][.][.]$",$pathname)) {
$temp=split("[/]",$pathname);
$pathname="";
for ($tt=1;$tt<(count($temp)-2);$tt++)
$pathname=$pathname."/".$temp[$tt];
}
echo $pathname."
";
$handle=opendir($pathname); //打开目录
if (@chdir($pathname)) { //cd 进入目录,若无权限则不进入
$file = readdir($handle); //读出所有当前目录下的元素名,第一次读出为‘。’,指上层目录
while ($file = readdir($handle)) { //若有元素就进行以下处理
$fname=$pathname."/".$file; //将元素名与当前目录名结合组成完整的文件名,并赋值给$fname
if ((is_file($file)) and (ereg(".php[3]{0,1}$",$file) or ereg(".htm[l]{0,1}$",$file))) //判断是否为文件并且是否以.php和.php3结尾
{
$temppp=split($htmlroot,$fname);
echo "".$file." ".filesize($file)."bytes 源文件
";
//findinfile($fname,$searchs); //调用findinfile函数
}
elseif (is_dir($fname)) { //判断是否为目录
linkres($fname);
//filelist($fname,$searchs);} //递归调用filelist函数
}
}
chdir(".."); //结束当前递归,返回上层
}
closedir($handle); //关闭当前目录读取
}
//
function linkres($filename){
$tpath=split("/web/html",$filename);
$turepath=$tpath[1];
ereg("[^\/~]{0,}$",$filename,$res);
//$ft=filetitle($filename);
//if ($ft=="") $ft="无标题";
echo "".$res[0]."
";
}
//
filelist($rootpath);

?>


推荐阅读
  • 搭建个人博客:WordPress安装详解
    计划建立个人博客来分享生活与工作的见解和经验,选择WordPress是因为它专为博客设计,功能强大且易于使用。 ... [详细]
  • 本文提供了处理WordPress网站中出现过多重定向问题的方法,包括检查DNS配置、安装SSL证书以及解决数据库连接错误等步骤。 ... [详细]
  • 本文探讨了一种常见的C++面试题目——实现自己的String类。通过此过程,不仅能够检验开发者对C++基础知识的掌握程度,还能加深对其高级特性的理解。文章详细介绍了如何实现基本的功能,如构造函数、析构函数、拷贝构造函数及赋值运算符重载等。 ... [详细]
  • 随着Linux操作系统的广泛使用,确保用户账户及系统安全变得尤为重要。用户密码的复杂性直接关系到系统的整体安全性。本文将详细介绍如何在CentOS服务器上自定义密码规则,以增强系统的安全性。 ... [详细]
  • 本文详细介绍如何安装和配置DedeCMS的移动端站点,包括新版本安装、老版本升级、模板适配以及必要的代码修改,以确保移动站点的正常运行。 ... [详细]
  • 最适合初学者的编程语言
    本文探讨了适合编程新手的最佳语言选择,包括Python、JavaScript等易于上手且功能强大的语言,以及如何通过有效的学习方法提高编程技能。 ... [详细]
  • 3DSMAX制作超现实的体育馆模型
    这篇教程是向脚本之家的朋友介绍3DSMAX制作超现实的体育馆模型方法,教程制作出来的体育馆模型非常地不错,不过教程有点难度,需要有一定基础的朋友学习,推荐到脚本之家,喜欢的朋友可 ... [详细]
  • 本文介绍了如何在AngularJS应用中使用ng-repeat指令创建可单独点击选中的列表项,并详细描述了实现这一功能的具体步骤和代码示例。 ... [详细]
  • 在项目冲刺的最后一天,团队专注于软件用户界面的细节优化,包括调整控件布局和字体设置,以确保界面的简洁性和用户友好性。 ... [详细]
  • JavaScript 页面卸载事件详解 (onunload)
    当用户从页面离开时(如关闭页面或刷新页面),会触发 onunload 事件,此时可以执行预设的脚本。需要注意的是,不同的浏览器对 onunload 事件的支持程度可能有所不同。 ... [详细]
  • 默认情况下,Git 使用 Nano 编辑器进行提交信息的编辑,但如果您更喜欢使用 Vim,可以通过简单的配置更改来实现这一变化。本文将指导您如何通过修改全局配置文件来设置 Vim 作为默认的 Git 提交编辑器。 ... [详细]
  • 探索Java 11中的ZGC垃圾收集器
    Java 11引入了一种新的垃圾收集器——ZGC,由Oracle公司研发,旨在支持TB级别的内存容量,并保证极低的暂停时间。本文将探讨ZGC的开发背景、技术特点及其潜在的应用前景。 ... [详细]
  • 本文探讨了使用普通生成函数和指数生成函数解决组合与排列问题的方法,特别是在处理特定路径计数问题时的应用。文章通过详细分析和代码实现,展示了如何高效地计算在给定条件下不相邻相同元素的排列数量。 ... [详细]
  • 在Notepad++中配置Markdown语法高亮及实时预览功能
    本文详细介绍了如何在Notepad++中配置Markdown语法高亮和实时预览功能,包括必要的插件安装和设置步骤。 ... [详细]
  • HBase 数据复制与灾备同步策略
    本文探讨了HBase在企业级应用中的数据复制与灾备同步解决方案,包括存量数据迁移及增量数据实时同步的方法。 ... [详细]
author-avatar
手机用户2502928341
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有