php 目录遍历、删除 函数的使用介绍


Posted in PHP onApril 28, 2013

小编今天没事写了目录想关的函数 

   包括 遍历该文件夹下的文件,目录子目录  读取当前文件下目录和文件  删除当前文件夹下的目录子目录以及文件 以上三个函数目前还不支持中文文件 中文目录

<?php
header("Content-type:text/html;charset=utf-8");
/**
* 读取当前目录下的文件和目录
* 
* @param    string    $path    路径
* @return    array    所有满足条件的文件
*/
function tlist($path){
    $path = iconv('utf-8', 'gbk', $path);
    if(!is_dir($path)){
        throw new Exception($path."不是目录");
    }
    $arr = array('dir'=>array(),'file'=>array());
    $hd = opendir($path);
    while(($file = readdir($hd))!==false){
        if($file=="."||$file=="..") {continue;}
        if(is_dir($path."/".$file)){
            $arr['dir'][] = iconv('gbk','utf-8',$file);
        }else if(is_file($path."/".$file)){
            $arr['file'][] = iconv('gbk','utf-8',$file);
        }
    }
    closedir($hd);
    echo "目录有:".implode("<br />",$arr['dir'])."<br />";
    echo "文件有:".implode("<br />",$arr['file']);
}
/**
* 遍历当前目录下的文件和目录以及子文件夹中目录
* 
* @param    string    $path    路径
* @return    array    所有满足条件的文件
*/
function blist($path){
    if(!is_dir(iconv("utf-8","gbk",$path))){
    throw new Exception("文件夹".$path."不存在或者不是文件");
   }
    $arr = array();
    $hd = opendir(iconv("utf-8","gbk",$path));
    while(($file = readdir($hd))!==false){
        if($file=="."||$file=="..") {continue;}
          $newpath=iconv('utf-8', 'gbk', $path) .'/'.$file;
        if(is_dir($newpath)){
            $arr[] = blist($path."/".$file);
        }else if(is_file($newpath)){
            $arr[] = iconv('gbk','utf-8',$file);
        }
    }
    closedir($hd);
    return $arr;
}
/**
* 删除目录下的文件以及子目录
* #param  string $path 路径
* #return string 删除成功返回true 失败返回false;
*/
function dirDel($path){
    if(!is_dir($path)){
        throw new Exception($path."输入的不是有效目录");
    }
    $hand = opendir($path);
    while(($file = readdir($hand))!==false){
        if($file=="."||$file=="..")  continue;
        if(is_dir($path."/".$file)){
            dirDel($path."/".$file);
        }else{
            @unlink($path."/".$file);
        }    }
    closedir($hand);
    @rmdir($path);
}
?>

PHP 相关文章推荐
特转载一高手总结PHP学习资源和链接.
Dec 05 PHP
关于php连接mssql:pdo odbc sql server
Jul 20 PHP
php addslashes及其他清除空格的方法是不安全的
Jan 25 PHP
PHP错误Warning: Cannot modify header information - headers already sent by解决方法
Sep 27 PHP
php+html5使用FormData对象提交表单及上传图片的方法
Feb 11 PHP
php获取当前页面完整URL地址
Dec 30 PHP
PHP Callable强制指定回调类型的方法
Aug 30 PHP
php获取文件名称和扩展名的方法
Feb 07 PHP
php smtp实现发送邮件功能
Jun 22 PHP
PHP swoole和redis异步任务实现方法分析
Aug 12 PHP
确保Laravel网站不会被嵌入到其他站点中的方法
Oct 18 PHP
通过PHP的Wrapper无缝迁移原有项目到新服务的实现方法
Apr 02 PHP
基于php权限分配的实现代码
Apr 28 #PHP
基于ubuntu下nginx+php+mysql安装配置的具体操作步骤
Apr 28 #PHP
phpcms模块开发之swfupload的使用介绍
Apr 28 #PHP
php中get_headers函数的作用及用法的详细介绍
Apr 27 #PHP
使用php get_headers 判断URL是否有效的解决办法
Apr 27 #PHP
php中serialize序列化与json性能测试的示例分析
Apr 27 #PHP
php gzip压缩输出的实现方法
Apr 27 #PHP
You might like
php木马攻击防御之道
2008/03/24 PHP
PHP伪静态Rewrite设置之APACHE篇
2014/07/30 PHP
php短网址和数字之间相互转换的方法
2015/03/13 PHP
WordPress开发中用于获取近期文章的PHP函数使用解析
2016/01/05 PHP
php获取文件名称和扩展名的方法
2017/02/07 PHP
XP折叠菜单&amp;仿QQ2006菜单
2006/12/16 Javascript
jquery 读取页面load get post ajax 四种方式代码写法
2011/04/02 Javascript
JavaScript高级程序设计 阅读笔记(七) ECMAScript中的语句
2012/02/27 Javascript
javascript unicode与GBK2312(中文)编码转换方法
2013/11/14 Javascript
jQuery插件开发的两种方法及$.fn.extend的详解
2014/01/16 Javascript
jquery使用Cookie和JSON记录用户最近浏览历史
2016/04/19 Javascript
分享jQuery封装好的一些常用操作
2016/07/28 Javascript
javascript history对象详解
2017/02/09 Javascript
Vue组件tree实现树形菜单
2017/04/13 Javascript
jQuery创建及操作xml格式数据示例
2018/05/26 jQuery
详解Element-UI中上传的文件前端处理
2019/08/07 Javascript
vue 取出v-for循环中的index值实例
2019/11/09 Javascript
[01:02:00]DOTA2-DPC中国联赛 正赛 Elephant vs IG BO3 第三场 1月24日
2021/03/11 DOTA
python中map、any、all函数用法分析
2015/04/21 Python
使用python实现BLAST
2018/02/12 Python
Python基于pycrypto实现的AES加密和解密算法示例
2018/04/10 Python
python中的单引号双引号区别知识点总结
2019/06/23 Python
python多进程重复加载的解决方式
2019/12/13 Python
Python数据持久化存储实现方法分析
2019/12/21 Python
利用Tensorboard绘制网络识别准确率和loss曲线实例
2020/02/15 Python
使用CSS3制作倾斜导航条和毛玻璃效果
2017/09/12 HTML / CSS
CSS3解析抖音LOGO制作的方法步骤
2019/04/11 HTML / CSS
惠普墨西哥官方商店:HP墨西哥
2016/12/01 全球购物
网上蛋糕店创业计划书
2014/01/24 职场文书
四年大学生活的自我评价范文
2014/02/07 职场文书
中秋节国旗下演讲稿
2014/09/05 职场文书
结婚保证书(卖身契)
2015/02/26 职场文书
2015年教师国培感言
2015/08/01 职场文书
字典算法实现及操作 --python(实用)
2021/03/31 Python
Java Socket实现多人聊天系统
2021/07/15 Java/Android
据Python爬虫不靠谱预测可知今年双十一销售额将超过6000亿元
2021/11/11 Python