首页 > 心得分享,程序资源 > phpDir,枚举出所在目录下的所有文件.

phpDir,枚举出所在目录下的所有文件.

说起来是一个很鸡肋的功能,因为无论的apache还是Nginx,好像都有同样的功能。

只需要一个命令就可以开启这个功能。

而 apache 下,可以用.htaccess文件开启这个功能。

但是,所有的东西,存在即是合理。

为了以后使用起来方便,我把 这个代码 贴出来。

[php]
<?php
$dirFile = '.'; //欲输出目录,默认当前目录 "."
header("Content-type: text/html; charset=utf-8"); //定义输出头类型
// 获取 主机名
$_url = $_SERVER["REQUEST_URI"];
$_url = substr($_url,0,strrpos($_url,"/")) . "/";
$_title = $_SERVER['SERVER_NAME'] . " - " . $_url;

$_self_name = array_pop(explode("/",__FILE__)); //获取自身文件名,不在输出。

$haddle = opendir($dirFile);
$_dir = "";
$_file = "";
while($file = readdir($haddle)){
$dirfile = $dirFile.'/'.$file;
$file = mb_convert_encoding($file, "UTF-8", "gb2312");
if(substr($file,0,1) != "." && $file != $_self_name){
if(filetype($dirfile) == "dir"){
$_dir.= ' '.date('Y-m-d h:m:s',filectime($dirfile));
$_dir.= ' &lt;dir&gt; <a href="'.$file.'/">'.$file.'</a>';
$_dir.="\n";
}else{
$_file.= ' '.date('Y-m-d h:m:s',filectime($dirfile));
$_size = filesize($dirfile);
$_size = (14-strlen($_size));
for ($i=1; $i<=$_size; $i++){
$_file.= " ";
}
$_file.= filesize($dirfile).' <a href="'.$file.'">'.$file.'</a>';
$_file.="\n";
}
}
}
$_echo = $_dir . $_file;
closedir($haddle);
?><html>
<head>
<title><?php echo $_title; ?></title>
<style>
html{font-size:14px;font-family:arial;}
a{text-decoration:underline; color:black;}
a:hover{text-decoration:none;color:#ff0000}
a:visited{text-decoration:none; color:blue;}
h1{font-size:20px;}
</style>
</head>
<body>
<h1><?php echo $_title; ?></h1><hr>
<pre><?php if($_SERVER["REQUEST_URI"]!="/"){echo '<a href="../">[父目录]</a>'."\n";} ?>
<?php echo $_echo; ?>
</pre><hr noshade>
<em><a href="http://<?php echo $_SERVER['SERVER_NAME']; ?>">phpDir</a> powered by <a href="http://www.qs5.org/">www.qs5.org</a></em>
<small> Date:<?php echo date("Y-m-d h:i:s"); ?></small>
</body>
</html>
[/php]

上一篇: 部分电脑插入U盘后提示“Windows - 没有软盘”的原因与解决办法

下一篇: 酷盘网盘外链文件代理

最近回复

标签