源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

php实例分享之通过递归实现删除目录下的所有文件详解

  • 时间:2022-06-23 04:21 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:php实例分享之通过递归实现删除目录下的所有文件详解
先贴代码:
[u]复制代码[/u] 代码如下:
<?php function delFile($dirName){   if ($handle = opendir("$dirName")){   while (($item = readdir($handle))!=false){    if ($item!="." && $item!="..")  {     if ( is_dir( "$dirName/$item" ) ) {               delFile( "$dirName/$item" );         } else unlink("$dirName/$item");   }  }  closedir($handle); } ?> <?php  delFile('/home/sources'); ?>
先讲解几个函数: opendir() :函数打开一个目录句柄,可由 closedir(),readdir() 和 rewinddir() 使用。 若成功,则该函数返回一个目录流,否则返回 false 以及一个 error。可以通过在函数名前加上 "@" 来隐藏 error 的输出。例如$dir=@ opendir("image"); readdir():返回由opendir函数打开的目录句柄中的条目,即顺序返回文件夹中的文件名,顺序按照文件系统中制定的排序方式。 id_dir():即检测参数文件是否为目录,如果是返回true. un_link():即删除制定文件。 所以程序执行思路为:函数调用主目录,然后顺序检测每一文件是否为目录,如果为目录则递归调用函数,并对不为目录的文件进行删除,直到遍历完所有的文件。 这个程序只实现删除文件夹里面的内容,而没有删除文件夹本身,如果要实现这一目的,加上下面代码即可:
[u]复制代码[/u] 代码如下:
rmdir($dirName);
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部