使用PHP遍历文件目录与清除目录中文件的实现详解

今天无聊中练习了一下PHP遍历文件目录的程序,编写了以下两个程序,不过质量不是很好,轻拍~~~

1、清除PHP缓存文件

<div class="codetitle"><a style="CURSOR: pointer" data="91025" class="copybut" id="copybut91025" onclick="doCopy('code91025')"> 代码如下:
<div class="codebody" id="code91025">
<?PHP function read_dir($dir,$file)
{
$a =strpos($file,".PHP"); if($a>0)
{
unlink($dir . $file);
echo "delete $dir$file
";
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、遍历目录中所有文件

<div class="codetitle"><a style="CURSOR: pointer" data="82739" class="copybut" id="copybut82739" onclick="doCopy('code82739')"> 代码如下:
<div class="codebody" id="code82739">

<Meta http-enquiv="Content-Type" content="text/html;charset=gb2312">
查看目录

<table width="600" align="center">
<tr>
<th width="50%">文件
<th width="25%">修改时间
<th width="25%">文件大小(k)
</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,-1);
$k = strrpos($up_url,"/");
$up_url = substr($up_url,$k-strlen($up_url));
$up_url = $up_url ."/";
}
echo "<a href=\"test.php?act=list_dir&dir=$up_url\">$up_dir";
}
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</td><td>$time</td><td>$size</td></tr>";
$dir = $up_dir; }
}
} ?>
</table> <?php die(); ?>



PHP清除目录中文件遍历文件目录

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...