使用PHP遍历文件目录与清除目录中文件的实现详解
2015-01-24信息快讯网
本篇文章是对使用PHP遍历文件目录与清除目录中文件的实现方法进行了详细的分析介绍,需要的朋友参考下
今天无聊中练习了一下PHP遍历文件目录的程序,编写了以下两个程序,不过质量不是很好,轻拍~~~1、清除PHP缓存文件
<?php
function read_dir($dir,$file)
{
$a =strpos($file,".php");
if($a>0)
{
unlink($dir . $file);
echo "delete $dir$file <br>";
return true;
}
if(strpos($file,".") === 0 || strpos($file,".") !== false ) return true;
if(strpos($file,".") === false || strpos($dir,"/") === false)
{
$dir = $dir . $file . "/";
if(!is_dir($dir)) return false;
$dh = opendir($dir);
while(($file = readdir($dh)) != false)
{
read_dir($dir,$file); //递归调用
}
}
}
function clear_caches()
{
$dir = "./temp/"; //要清除的PHP缓存文件目录
if(!is_dir($dir)) die("It is not a dir");
$dh = opendir($dir);
while(($file = readdir($dh) )!=false)
{
//var_dump($file);
read_dir($dir,$file);
}
}
?>
2、遍历目录中所有文件
<html>
<head>
<meta http-enquiv="Content-Type" content="text/html;charset=gb2312">
<title>查看目录</title>
</head>
<body>
<table width="600" align="center">
<tr>
<th width="50%">文件名</th>
<th width="25%">修改时间</th>
<th width="25%">文件大小(k)</th>
</tr>
<?php
//$dir = "./admin/";
$dir = "c:/";
$up_dir = "上级目录";
$up_url = $dir;
if(isset($_REQUEST['act']) && $_REQUEST['act']=='list_dir')
{
if(emptyempty($_REQUEST['dir']))
{
$up_dir="目录为空!";
}
$dir = isset($_REQUEST['dir']) ? $_REQUEST['dir'] : $dir;
}
if(!is_dir($dir))
{
$up_dir="无效目录!";
}
?>
<tr>
<td colspan="3">
<?php
if(strpos($up_dir,"上级目录")!==false)
{
//if($up_url=="") echo $up_dir;
if($dir != "./admin/")
{
$up_url = substr($dir,0,-1);
$k = strrpos($up_url,"/");
$up_url = substr($up_url,0,$k-strlen($up_url));
$up_url = $up_url ."/";
}
echo "<a href=\"test.php?act=list_dir&dir=$up_url\">$up_dir</a>";
}
else
{
echo $up_dir;
die();
}
?>
</td>
</tr>
<?php
$up_dir = $dir;
$dh = opendir($dir);
while(($file=readdir($dh)) != false)
{
if($file != "." && $file != ".." && $file != ".svn" )
{
if(strpos($file,".") !==false)
{
$time = date("Y-m-d H:i:s", filectime($dir . $file));
$size = filesize($dir . $file)/1000;
echo "<tr><td>$file</td><td>$time</td><td>$size</td></tr>";
}
else
{
$time = date("Y-m-d H:i:s.", filectime($dir . $file));
$size = filesize($dir . $file)/1000;
$dir = $dir . $file ."/";
echo "<tr><td><a href =\"test.php?act=list_dir&dir=$dir\">$file</a></td><td>$time</td><td>$size</td></tr>";
$dir = $up_dir;
}
}
}
?>
</table>
<?php die(); ?>
</body>
</html>
php无限遍历目录示例
php自动加载autoload机制示例分享
php多文件上传下载示例分享
php分页代码学习示例分享
php多文件上传实现代码
PHP判断远程图片或文件是否存在的实现代码
php中的filesystem文件系统函数介绍及使用示例
php解压文件代码实现php在线解压
PHP遍历并打印指定目录下所有文件实例
php遍历目录输出目录及其下的所有文件示例
php递归获取目录内文件(包含子目录)封装类分享
php遍历文件夹所有文件子文件夹函数代码
php遍历目录与文件夹的多种方法详解
解析关于java,php以及html的所有文件编码与乱码的处理方法汇总
探讨:php中在foreach中使用foreach ($arr as &$value) 这种类型的解释
PHP中的函数-- foreach()的用法详解
解析php框架codeigniter中如何使用框架的session
PHP错误提示的关闭方法详解
php 备份数据库代码(生成word,excel,json,xml,sql)
基于PHP文件操作的详细诠释
使用php将某个目录下面的所有文件罗列出来的方法详解
PHP操作MongoDB GridFS 存储文件的详解
使用PHP求两个文件的相对路径
解析thinkphp中的导入文件标签
解析PHP SPL标准库的用法(遍历目录,查找固定条件的文件)
使用迭代器 遍历文件信息的详解
php遍历所有文件及文件夹的方法深入解析
探讨php中遍历二维数组的几种方法详解
基于PHP遍历数组的方法汇总分析
php简单浏览目录内容的实现代码
PHP删除目录及目录下所有文件的方法详解
php 目录遍历、删除 函数的使用介绍