PHP删除非空目录的函数代码小结


Posted in PHP onFebruary 28, 2013

有了这个小程序,PHPer就不用手动进行删除计算机上的目录文件了,在练习PHP目录文件操作时就可以用这个函数,在这个基础上还可以增加浏览文件夹目录,然后进行删除。

代码一:

<?php 
function d_rmdir($dirname) {   //删除非空目录 
if(!is_dir($dirname)) { 
return false; 
} 
$handle = @opendir($dirname); 
while(($file = @readdir($handle)) !== false){ 
if($file != '.' && $file != '..'){ 
$dir = $dirname . '/' . $file; 
is_dir($dir) ? d_rmdir($dir) : unlink($dir); 
} 
} 
closedir($handle); 
return rmdir($dirname) ; 
} 
if(d_rmdir("./temp")) 
 echo "succes"; 
else 
 echo "false"; 
?>

第二个是从手册中翻出来的:)

代码二:

<?php
 
functionremove_directory($dir){
 if($handle=opendir("$dir")){
 while(false!==($item=readdir($handle))){
if($item!="."&&$item!=".."){

 if(is_dir("$dir/$item")){


remove_directory("$dir/$item");

 }else{


unlink("$dir/$item");


echo"removing$dir/$item<br> ";

 }

}
 }
 closedir($handle);
 rmdir($dir);
 echo"removing$dir<br> ";
 }
}

第三个是codebit.cn上面收集的,还是手册里的好

代码三:

functionremoveDir($dirName)
{
if(!is_dir($dirName))

{


returnfalse;

}

$handle=@opendir($dirName);

while(($file=@readdir($handle))!==false)

{


if($file!='.'&&$file!='..')


{



$dir=$dirName.'/'.$file;



is_dir($dir)?removeDir($dir):@unlink($dir);


}

}

closedir($handle);


returnrmdir($dirName);
}
?>
PHP 相关文章推荐
我常用的几个类
Oct 09 PHP
php堆排序(heapsort)练习
Nov 13 PHP
浅谈Eclipse PDT调试PHP程序
Jun 09 PHP
Laravel 5.0 发布 新版本特性详解
Feb 10 PHP
php操作(删除,提取,增加)zip文件方法详解
Mar 12 PHP
php日期操作技巧小结
Jun 25 PHP
php+mysql查询实现无限下级分类树输出示例
Oct 03 PHP
yii2安装详细流程
May 23 PHP
PHP实现数组转JSon和JSon转数组的方法示例
Jun 14 PHP
thinkphp5 模型实例化获得数据对象的教程
Oct 18 PHP
PHP数据源架构模式之表入口模式实例分析
Jan 23 PHP
Thinkphp 框架扩展之应用模式实现方法分析
Apr 27 PHP
PHP生成随机用户名和密码的实现代码
Feb 27 #PHP
PHP人民币金额数字转中文大写的函数代码
Feb 27 #PHP
PHP和.net中des加解密的实现方法
Feb 27 #PHP
php和js如何通过json互相传递数据相关问题探讨
Feb 26 #PHP
php数组的概述及分类与声明代码演示
Feb 26 #PHP
浅谈apache和nginx的rewrite的区别
Feb 22 #PHP
php并发对MYSQL造成压力的解决方法
Feb 21 #PHP
You might like
yii中widget的用法
2014/12/03 PHP
深入讲解PHP的Yii框架中的属性(Property)
2016/03/18 PHP
PHP将页面中点击数量高的链接进行高亮显示的方法
2016/05/30 PHP
Yii框架实现图片上传的方法详解
2017/05/20 PHP
利用php操作memcache缓存的基础方法示例
2017/08/02 PHP
PHP+Ajax简单get验证操作示例
2019/03/02 PHP
用倒置滤镜把div倒置,再把table倒置。
2007/07/31 Javascript
JQuery slideshow的一个小问题(如何发现及解决过程)
2013/02/06 Javascript
JQuery对表格进行操作的常用技巧总结
2014/04/23 Javascript
JavaScript匿名函数与委托使用示例
2014/07/22 Javascript
JavaScript中实现继承的三种方式和实例
2015/01/29 Javascript
JavaScript中数组的合并以及排序实现示例
2015/10/24 Javascript
Jquery easyui 实现动态树
2015/11/17 Javascript
js+flash实现的5图变换效果广告代码(附演示与demo源码下载)
2016/04/01 Javascript
Node.js如何自动审核团队的代码
2016/07/20 Javascript
过期软件破解办法实例详解
2017/01/04 Javascript
简单谈谈gulp-changed插件
2017/02/21 Javascript
实现微信小程序的wxml文件和wxss文件在webstrom的支持
2017/06/12 Javascript
关于layui时间回显问题的解决方法
2019/09/24 Javascript
Python实现的数据结构与算法之链表详解
2015/04/22 Python
Python利用Nagios增加微信报警通知的功能
2016/02/18 Python
pandas数据预处理之dataframe的groupby操作方法
2018/04/13 Python
python爬取cnvd漏洞库信息的实例
2019/02/14 Python
django与vue的完美结合_实现前后端的分离开发之后在整合的方法
2019/08/12 Python
python 动态迁移solr数据过程解析
2019/09/04 Python
Python求两个字符串最长公共子序列代码实例
2020/03/05 Python
解决Django中checkbox复选框的传值问题
2020/03/31 Python
Python变量格式化输出实现原理解析
2020/08/06 Python
python绘制雷达图实例讲解
2021/01/03 Python
印度尼西亚最大的电商平台:Tokopedia(印尼版淘宝)
2017/12/02 全球购物
Regatta官网:英国最受欢迎的户外服装和鞋类品牌
2019/05/01 全球购物
2015年图书馆个人工作总结
2015/05/26 职场文书
2016廉洁从业学习心得体会
2016/01/19 职场文书
Html5调用企业微信的实现
2021/04/16 HTML / CSS
mybatis3中@SelectProvider传递参数方式
2021/08/04 Java/Android
Python实现双向链表
2022/05/25 Python