php递归删除指定文件夹的方法小结


Posted in PHP onApril 20, 2015

本文实例总结了两种php递归删除指定文件夹的方法。分享给大家供大家参考。具体如下:

方法一:

function recursiveDelete($dir)
{ 
  if ($handle = @opendir($dir))
  {
  while (($file = readdir($handle)) !== false)
  {
   if (($file == ".") || ($file == ".."))
   {
    continue;
   }
   if (is_dir($dir . '/' . $file))
   {
    // call self for this directory
    recursiveDelete($dir . '/' . $file);
   }
   else
   {
    unlink($dir . '/' . $file); // remove this file
   }
  }
  @closedir($handle);
  rmdir ($dir);
  }
}

方法二:

/*
 自定义的删除函数,可以删除文件和递归删除文件夹
*/
 function my_del($path)
{
 if(is_dir($path))
 {
   $file_list= scandir($path);
   foreach ($file_list as $file)
   {
    if( $file!='.' && $file!='..')
    {
     my_del($path.'/'.$file);
    }
   }
   @rmdir($path);
   //这种方法不用判断文件夹是否为空,
   //因为不管开始时文件夹是否为空,到达这里的时候,都是空的  
 }
 else
 {
  @unlink($path);
  //这两个地方最好还是要用@屏蔽一下warning错误,看着闹心
 }
}
$path='d:/技术文档 - 副本';
//要删除的文件夹
//如果php文件不是ANSI,而是UTF-8模式,
//而且要删除的文件夹中包含汉字字符的话,调用函数前需要转码
//$path=iconv( 'utf-8', 'gb2312',$path );
my_del($path);

希望本文所述对大家的php程序设计有所帮助。

PHP 相关文章推荐
php array_search() 函数使用
Apr 13 PHP
PHP得到某段时间区间的时间戳 php定时任务
Apr 12 PHP
从PHP的源码中深入了解stdClass类
Apr 18 PHP
thinkphp常见路径用法分析
Dec 02 PHP
php获取QQ头像并显示的方法
Dec 23 PHP
PHP使用gmdate实现将一个UNIX 时间格式化成GMT文本的方法
Mar 19 PHP
PHP中的表达式简述
May 29 PHP
php抛出异常与捕捉特定类型的异常详解
Oct 26 PHP
PHP基于接口技术实现简单的多态应用完整实例
Apr 26 PHP
PHP扩展Swoole实现实时异步任务队列示例
Apr 13 PHP
PHP正则表达式函数preg_replace用法实例分析
Jun 04 PHP
php redis setnx分布式锁简单原理解析
Oct 23 PHP
php动态生成缩略图并输出显示的方法
Apr 20 #PHP
PHP随机生成唯一HASH值自定义函数
Apr 20 #PHP
php隐藏实际地址的文件下载方法
Apr 18 #PHP
php实现用于计算执行时间的类实例
Apr 18 #PHP
php递归遍历多维数组的方法
Apr 18 #PHP
php实现二进制和文本相互转换的方法
Apr 18 #PHP
php使用指定字符列表生成随机字符串的方法
Apr 18 #PHP
You might like
一个简单的域名注册情况查询程序
2006/10/09 PHP
PHP 读取文件的正确方法
2009/04/29 PHP
解析PHP中$_FILES的使用以及注意事项
2013/07/05 PHP
详解PHP素材图片上传、下载功能
2019/04/12 PHP
firefox事件处理之自动查找event的函数(用于onclick=foo())
2010/08/05 Javascript
基于jquery的多彩百分比 动态进度条 投票效果显示效果实现代码
2011/08/28 Javascript
获得所有表单值的JQuery实现代码[IE暂不支持]
2012/05/24 Javascript
JavaScript获取flash对象与网上的有所不同
2014/04/21 Javascript
javascript中var的重要性分析
2015/02/11 Javascript
详解JavaScript的流程控制语句
2015/11/30 Javascript
JS设置cookie、读取cookie
2016/02/24 Javascript
jQuery 判断元素整理汇总
2017/02/28 Javascript
详解vue-cli本地环境API代理设置和解决跨域
2017/09/05 Javascript
HTML5+JS+JQuery+ECharts实现异步加载问题
2017/12/16 jQuery
js点击时关闭该范围下拉菜单之外的菜单方法
2018/01/11 Javascript
详谈vue+webpack解决css引用图片打包后找不到资源文件的问题
2018/03/06 Javascript
vue中引入mxGraph的步骤详解
2019/05/17 Javascript
bootstrap table实现横向合并与纵向合并
2019/07/18 Javascript
通过JS判断网页是否为手机打开
2020/10/28 Javascript
vue实现抽屉弹窗效果
2020/11/15 Javascript
在Python中处理字符串之ljust()方法的使用简介
2015/05/19 Python
Python入门之三角函数tan()函数实例详解
2017/11/08 Python
python遍历文件夹,指定遍历深度与忽略目录的方法
2018/07/11 Python
Python全栈之列表数据类型详解
2019/10/01 Python
使用CSS3设计地图上的雷达定位提示效果
2016/04/05 HTML / CSS
html5贪吃蛇游戏使用63行代码完美实现
2013/06/25 HTML / CSS
HTML5 视频播放(video),JavaScript控制视频的实例代码
2018/10/08 HTML / CSS
到底Java是如何传递参数的?是by value或by reference?
2012/07/13 面试题
留学推荐信怎么写
2014/01/25 职场文书
音乐器材管理制度
2014/01/31 职场文书
体操比赛口号
2014/06/10 职场文书
大学生党员个人对照检查材料范文
2014/09/25 职场文书
2014年党员干部四风问题自我剖析材料
2014/09/29 职场文书
2015年大学生工作总结
2015/04/21 职场文书
MySQL时间设置注意事项的深入总结
2021/05/06 MySQL
上个世纪50年代的可穿戴技术:无线电帽子
2022/02/18 无线电