php visitFile()遍历指定文件夹函数


Posted in PHP onAugust 21, 2010

注:visitFile()有少量修改

<? 
// 查看指定文件夹的文件 
$fileList = array(); 
function visitFile($path) 
{ 
global $fileList; 
$path = str_replace("\\", "/", $path); 
$fdir = dir($path); 
while (($file = $fdir->read()) !== false) 
{ 
if($file == '.' || $file == '..'){ continue; } 
$pathSub = preg_replace("*/{2,}*", "/", $path."/".$file); // 替换多个反斜杠 
$fileList[] = is_dir($pathSub) ? $pathSub."/" : $pathSub; 
if(is_dir($pathSub)){ visitFile($pathSub); } 
} 
$fdir->close(); 
return $fileList; 
} 
?> 
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> 
<form method="get"> 
<? 
$path = str_replace("\\", "/", $path); 
$path = preg_replace("*/{2,}*", "/", $path); 
?> 
路径:<input type="text" name="path" id="path" value="<?=$path;?>"/><br> 
<li>磁盘根目录 /</li> 
<li>网络本地 ./phpMyAdmin</li> 
<li>本地磁盘 file://C: 或者 C:</li> 
<br> 
<input name="action" type="submit" id="action" value="view" /> 
<input name="action" type="submit" id="action" value="delete" onclick="if(!confirm('是否删除 '+path.value+' 的所有子文件夹和子文件?')) return false;" /> 
</form> 
<? 
if(!empty($path)){ 
$path = preg_replace("*/{2,}*", "/", $path); 
$files = visitFile($path); 
switch(strtolower($_GET["action"])) 
{ 
case "view": 
foreach($files as $key => $value) 
{ 
printf("No.%4d·%s<br>\r\n", $key+1, $value); 
} 
break; 
case "delete": 
$faileFiles = array(); 
foreach(array_reverse($files) as $value) 
{ 
if(!unlink($value)) 
{ 
array_push($faileFiles, $value); 
} 
} 
if(!unlink($path)) { array_push($faileFiles, $path); } 
if(count($faileFiles) > 0) 
{ 
printf("<br><br>删除失败文件(%d):<p>\r\n", count($faileFiles)); 
foreach( $faileFiles as $key => $value) 
{ 
printf("No.%4d·%s<br>\r\n", $key+1, $value); 
} 
} 
break; 
} 
} 
?>
PHP 相关文章推荐
php源码加密 仿微盾PHP加密专家(PHPCodeLock)
May 06 PHP
PHP学习笔记之三 数据库基本操作
Jan 17 PHP
解析二进制流接口应用实例 pack、unpack、ord 函数使用方法
Jun 18 PHP
关于php操作mysql执行数据库查询的一些常用操作汇总
Jun 24 PHP
php 中文字符串首字母的获取函数分享
Nov 04 PHP
Php连接及读取和写入mysql数据库的常用代码
Aug 11 PHP
PHP基本语法总结
Sep 06 PHP
php中filter_input函数用法分析
Nov 15 PHP
php创建session的方法实例详解
Jan 27 PHP
PHP实现表单提交时去除斜杠的方法
Dec 26 PHP
php中遍历二维数组并以表格的形式输出的方法
Jan 03 PHP
实例讲解PHP中使用命名空间
Jan 27 PHP
php excel类 phpExcel使用方法介绍
Aug 21 #PHP
php下正则来匹配dede模板标签的代码
Aug 21 #PHP
php中使用ExcelFileParser处理excel获得数据(可作批量导入到数据库使用)
Aug 21 #PHP
使用VisualStudio开发php的图文设置方法
Aug 21 #PHP
利用Memcached在php下实现session机制 替换PHP的原生session支持
Aug 21 #PHP
ThinkPHP中实例Model方法的区别说明
Aug 21 #PHP
PHP 数组基础知识小结
Aug 20 #PHP
You might like
openflashchart 2.0 简单案例php版
2012/05/21 PHP
php中使用redis队列操作实例代码
2013/02/07 PHP
PHP修改session_id示例代码
2014/01/08 PHP
修改ThinkPHP缓存为Memcache的方法
2014/06/25 PHP
php计算两个坐标(经度,纬度)之间距离的方法
2015/04/17 PHP
PHP+MySQL存储数据常见中文乱码问题小结
2016/06/13 PHP
总结PHP如何获取当前主机、域名、网址、路径、端口和参数等
2016/09/09 PHP
thinkphp5框架路由原理与用法详解
2020/02/11 PHP
Prototype ObjectRange对象学习
2009/07/19 Javascript
让你的博文自动带上缩址的实现代码,方便发到微博客上
2010/12/28 Javascript
js动态给table添加/删除tr的方法
2013/08/02 Javascript
javascript巧用eval函数组装表单输入项为json对象的方法
2015/11/25 Javascript
移动端界面的适配
2017/01/11 Javascript
JS百度地图搜索悬浮窗功能
2017/01/12 Javascript
webpack配置之后端渲染详解
2017/10/26 Javascript
使用Vue.js和Element-UI做一个简单登录页面的实例
2018/02/23 Javascript
实例讲解JavaScript截取字符串
2018/11/30 Javascript
python实现的简单文本类游戏实例
2015/04/28 Python
Python(Django)项目与Apache的管理交互的方法
2018/05/16 Python
Flask框架实现给视图函数增加装饰器操作示例
2018/07/16 Python
详解python 3.6 安装json 模块(simplejson)
2019/04/02 Python
解决Python中回文数和质数的问题
2019/11/24 Python
Django 限制访问频率的思路详解
2019/12/24 Python
python3下pygame如何实现显示中文
2020/01/11 Python
python实现五子棋程序
2020/04/24 Python
世界首屈一指的钓鱼用品商店:TackleDirect
2016/07/26 全球购物
日本面向世界,国际级的免税在线购物商城:DOKODEMO
2017/02/01 全球购物
彪马日本官网:PUMA日本
2019/01/31 全球购物
HomeAway澳大利亚:预订你的度假屋,公寓、度假村、别墅等
2019/02/20 全球购物
四年级学生评语大全
2014/04/21 职场文书
迎国庆演讲稿
2014/09/05 职场文书
基层党员群众路线整改措施及努力方向
2014/10/28 职场文书
幼儿园大班开学寄语(2015秋季)
2015/05/27 职场文书
博物馆观后感
2015/06/05 职场文书
2016年中秋节寄语大全
2015/12/07 职场文书
vue ant design 封装弹窗表单的使用
2022/06/01 Vue.js