php 显示WEB目录下的所有目录及后缀为php,php3,htm,html的文件名
本程序可以显示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 "<a href=$temppp[1]>".$file."</a> ".filesize($file)."bytes <a href=codeshow?filename=$fname><font size=-1>源文件</font></a>
";
//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 "<a href=phplist.php?rootpath=$filename>".$res[0]."</a> <dir>
";
}
//
filelist($rootpath);
?>
补充:Php教程,Php常用代码