PHP unlink与rmdir删除目录及目录下所有文件实例代码


Posted in PHP onFebruary 07, 2018

在php中删除文件与目录其实很简单只要两个函数一个是unlink一个rmdir函数,如果要实现删除目录及目录下的文件我们需要利用递归来操作.

函数代码:仅删除指定目录下的文件,不删除目录文件夹,代码如下:

class shanchu { 
//循环目录下的所有文件 
function delFileUnderDir( $dirName=”../Smarty/templates/templates_c” ) 
{ 
if ( $handle = opendir( “$dirName” ) ) { 
while ( false !== ( $item = readdir( $handle ) ) ) { 
if ( $item != “.” && $item != “..” ) { 
if ( is_dir( “$dirName/$item” ) ) { 
delFileUnderDir( “$dirName/$item” ); 
} else {//开源代码phpfensi.com 
if( unlink( “$dirName/$item” ) )echo “成功删除文件: $dirName/$item<br />n”; 
} 
} 
} 
closedir( $handle ); 
} 
} 
}

假设需要删除一个名叫”upload”目录下的所有文件,但无需删除目录文件夹,你可以通过以下代码完成:

<?php delFileUnderDir( ‘upload');?>

php删除所有目录,代码如下:

function deltree($pathdir) 
{ 
echo $pathdir;//调试时用的 
if(is_empty_dir($pathdir))//如果是空的 
{ 
rmdir($pathdir);//直接删除 
} 
else 
{//否则读这个目录,除了.和..外 
$d=dir($pathdir); 
while($a=$d->read()) 
{ 
if(is_file($pathdir.'/'.$a) && ($a!='.') && ($a!='..')){unlink($pathdir.'/'.$a);} 
//如果是文件就直接删除 
if(is_dir($pathdir.'/'.$a) && ($a!='.') && ($a!='..')) 
{//如果是目录 
if(!is_empty_dir($pathdir.'/'.$a))//是否为空 
{//如果不是,调用自身,不过是原来的路径+他下级的目录名 
deltree($pathdir.'/'.$a); 
} 
if(is_empty_dir($pathdir.'/'.$a)) 
{//如果是空就直接删除 
rmdir($pathdir.'/'.$a); 
} 
} 
} 
$d->close(); 
echo "必须先删除目录下的所有文件";//我调试时用的 
} 
} 
function is_empty_dir($pathdir) 
{ 
//判断目录是否为空 
$d=opendir($pathdir); 
$i=0; 
while($a=readdir($d)) 
{ 
$i++; 
} 
closedir($d); 
if($i>2){return false;} 
else return true; 
}

PHP删除目录及目录下所有文件,代码如下:

<?php 
//循环删除目录和文件函数 
function delDirAndFile( $dirName ) 
{ 
if ( $handle = opendir( “$dirName” ) ) { 
while ( false !== ( $item = readdir( $handle ) ) ) { 
if ( $item != “.” && $item != “..” ) { 
if ( is_dir( “$dirName/$item” ) ) { 
delDirAndFile( “$dirName/$item” ); 
} else { 
if( unlink( “$dirName/$item” ) )echo “成功删除文件: $dirName/$item<br />n”; 
} 
} 
} 
closedir( $handle ); 
if( rmdir( $dirName ) )echo “成功删除目录: $dirName<br />n”; 
} 
} 
//假设需要删除一个名叫”upload”的同级目录即此目录下的所有文件,你可以通过以下代码完成: 
delDirAndFile( ‘upload'); 
?>

总结

以上所述是小编给大家介绍的PHP unlink与rmdir删除目录及目录下所有文件实例代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

PHP 相关文章推荐
如何删除多级目录
Oct 09 PHP
PHP操作XML作为数据库的类
Dec 19 PHP
适用于php-5.2 的 php.ini 中文版[金步国翻译]
Apr 17 PHP
php中global和$GLOBALS[]的分析之一
Feb 02 PHP
php使用exec shell命令注入的方法讲解
Nov 12 PHP
php采集内容中带有图片地址的远程图片并保存的方法
Jan 03 PHP
使用PHP接受文件并获得其后缀名的方法
Aug 05 PHP
带你了解PHP7 性能翻倍的关键
Nov 19 PHP
php判断邮箱地址是否存在的方法
Feb 13 PHP
PHP基于回溯算法解决n皇后问题的方法示例
Nov 07 PHP
laravel5.2表单验证,并显示错误信息的实例
Sep 29 PHP
laravel接管Dingo-api和默认的错误处理方式
Oct 25 PHP
php删除一个路径下的所有文件夹和文件的方法
Feb 07 #PHP
浅析PHP类的反射来实现依赖注入过程
Feb 06 #PHP
php打开本地exe程序,js打开本地exe应用程序,并传递相关参数方法
Feb 06 #PHP
PHP给源代码加密的几种方法汇总(推荐)
Feb 06 #PHP
php 替换文章中的图片路径,下载图片到本地服务器的方法
Feb 06 #PHP
PHP定义字符串的四种方式详解
Feb 06 #PHP
浅谈PHP中pack、unpack的详细用法
Mar 12 #PHP
You might like
php垃圾代码优化操作代码
2010/08/05 PHP
php中防止SQL注入的最佳解决方法
2013/04/25 PHP
php简单实现快速排序的方法
2015/04/04 PHP
PHP实现Huffman编码/解码的示例代码
2018/04/20 PHP
JS 字符串连接[性能比较]
2009/05/10 Javascript
javascript:history.go()和History.back()的区别及应用
2012/11/25 Javascript
jQuery简单图表peity.js使用示例
2014/05/02 Javascript
JavaScript数据结构和算法之图和图算法
2015/02/11 Javascript
实例剖析AngularJS框架中数据的双向绑定运用
2016/03/04 Javascript
Bootstrap标签页(Tab)插件使用方法
2017/03/21 Javascript
Ionic3 UI组件之autocomplete详解
2017/06/08 Javascript
js解决软键盘遮挡输入框的问题分享
2017/12/19 Javascript
Node.js readline 逐行读取、写入文件内容的示例
2018/03/01 Javascript
js实现按钮开关单机下拉菜单效果
2018/11/22 Javascript
微信小程序实现保存图片到相册功能
2018/11/30 Javascript
python使用WMI检测windows系统信息、硬盘信息、网卡信息的方法
2015/05/15 Python
Python类的用法实例浅析
2015/05/27 Python
使用Python进行二进制文件读写的简单方法(推荐)
2016/09/12 Python
python timestamp和datetime之间转换详解
2017/12/11 Python
Python3中内置类型bytes和str用法及byte和string之间各种编码转换 问题
2018/09/27 Python
python3实现猜数字游戏
2020/12/07 Python
django框架单表操作之增删改实例分析
2019/12/16 Python
基于keras 模型、结构、权重保存的实现
2020/01/24 Python
css3和jquery实现的可折叠导航菜单适合放在手机网页的导航菜单
2014/09/02 HTML / CSS
AmazeUI 加载进度条的实现示例
2020/08/20 HTML / CSS
Pottery Barn阿联酋:购买家具、家居装饰及更多
2019/12/08 全球购物
Java TransactionAPI (JTA) 主要包含几部分
2012/12/07 面试题
大学生毕业自荐信
2013/10/10 职场文书
致垒球运动员加油稿
2014/02/16 职场文书
音乐学专业求职信
2014/07/22 职场文书
2014年班主任工作总结
2014/11/08 职场文书
留学推荐信(中英文版)
2015/03/26 职场文书
咖啡厅里的创业计划书
2019/08/21 职场文书
Go 通过结构struct实现接口interface的问题
2021/10/05 Golang
室外天线与收音机天线杆接合方法
2022/04/05 无线电
使用MybatisPlus打印sql语句
2022/04/22 SQL Server