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查看session内容的函数
Aug 27 PHP
Admin generator, filters and I18n
Oct 06 PHP
PHP应用JSON技巧讲解
Feb 03 PHP
解析PHP自带的进位制之间的转换函数
Jun 08 PHP
用Json实现PHP与JavaScript间数据交换的方法详解
Jun 20 PHP
php数组键名技巧小结
Feb 17 PHP
PHP统一页面编码避免乱码问题
Apr 09 PHP
PHP session文件独占锁引起阻塞问题解决方法
May 12 PHP
php如何执行非缓冲查询API
Jul 22 PHP
php微信开发接入
Aug 27 PHP
实例讲解php将字符串输出到HTML
Jan 27 PHP
Yii2.0框架实现带分页的多条件搜索功能示例
Feb 20 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
让php处理图片变得简单 基于gb库的图片处理类附实例代码下载
2011/05/17 PHP
PHP Cookie的使用教程详解
2013/06/03 PHP
解析php中array_merge与array+array的区别
2013/06/21 PHP
php实现可逆加密的方法
2015/08/11 PHP
学习php设计模式 php实现访问者模式(Visitor)
2015/12/07 PHP
Windows平台实现PHP连接SQL Server2008的方法
2017/07/26 PHP
表单提交时自动复制内容到剪贴板的js代码
2007/03/16 Javascript
javascript 建设银行登陆键盘
2008/06/10 Javascript
查看源码的工具 学习jQuery源码不错的工具
2011/12/26 Javascript
JS动态添加Table的TR,TD实现方法
2015/01/28 Javascript
基于jQuery实现的旋转彩圈实例
2015/06/26 Javascript
基于jquery实现页面滚动时顶部导航显示隐藏
2020/04/20 Javascript
JavaScript+canvas实现七色板效果实例
2016/02/18 Javascript
JavaScript判断变量是否为数组的方法(Array)
2016/02/24 Javascript
浅谈vue加载优化策略
2019/03/19 Javascript
详解Vue中组件传值的多重实现方式
2019/08/16 Javascript
Vue中fragment.js使用方法小结
2020/02/17 Javascript
python有证书的加密解密实现方法
2014/11/19 Python
python实现文本文件合并
2015/12/29 Python
Python 3.6 读取并操作文件内容的实例
2018/04/23 Python
python 删除指定时间间隔之前的文件实例
2018/04/24 Python
对Python3中列表乘以某一个数的示例详解
2019/07/20 Python
如何安装2019Pycharm最新版本(详细教程)
2019/09/26 Python
python编程进阶之类和对象用法实例分析
2020/02/21 Python
解决pycharm下pyuic工具使用的问题
2020/04/08 Python
详解python定时简单爬取网页新闻存入数据库并发送邮件
2020/11/27 Python
TUMI香港官网:国际领先的行李箱、背囊品牌
2021/03/01 全球购物
高考自主招生自荐信
2013/10/20 职场文书
机械系大学毕业生推荐信
2013/11/27 职场文书
运动会稿件100字
2014/02/21 职场文书
《鸟的天堂》教学反思
2014/02/27 职场文书
全国优秀辅导员事迹材料
2014/05/14 职场文书
师范生见习报告
2014/10/31 职场文书
教师廉洁自律个人总结
2015/02/10 职场文书
P站美图推荐——变身女主角特辑
2022/03/20 日漫
python自动获取微信公众号最新文章的实现代码
2022/07/15 Python