手机
当前位置:查字典教程网 >编程开发 >php教程 >使用PHP遍历文件目录与清除目录中文件的实现详解
使用PHP遍历文件目录与清除目录中文件的实现详解
摘要:今天无聊中练习了一下PHP遍历文件目录的程序,编写了以下两个程序,不过质量不是很好,轻拍~~~1、清除PHP缓存文件复制代码代码如下:2、遍...

今天无聊中练习了一下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代码在网页上生成图片

PHP开发文件系统实例讲解

用PHP 4.2书写安全的脚本

PHP实现文件安全下载

使用PHP的错误处理

文件上传的实现

多文件上载系统完整版

使用PHP维护文件系统

动态新闻发布的实现及其技巧

用PHP创建PDF中文文档

精品推荐
分类导航