当前位置:首页 > PHP教程 > php文件操作 > 列表

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

发布:smiling 来源: PHP粉丝网  添加日期:2021-05-22 21:13:17 浏览: 评论:0 

这篇文章主要介绍了php递归删除指定文件夹的方法,实例总结了两种常用的递归删除文件夹的技巧,非常具有实用价值,需要的朋友可以参考下,本文实例总结了两种php递归删除指定文件夹的方法,分享给大家供大家参考,具体如下:

方法一:

  1. function recursiveDelete($dir) 
  2. {  
  3.   if ($handle = @opendir($dir)) 
  4.   { 
  5.   while (($file = readdir($handle)) !== false) 
  6.   { 
  7.    if (($file == ".") || ($file == "..")) 
  8.    { 
  9.     continue; 
  10.    } 
  11.    if (is_dir($dir . '/' . $file)) 
  12.    { 
  13.     // call self for this directory 
  14.     recursiveDelete($dir . '/' . $file); 
  15.    } 
  16.    else 
  17.    { 
  18.     unlink($dir . '/' . $file); // remove this file 
  19.    } 
  20.   } 
  21.   @closedir($handle); 
  22.   rmdir ($dir); 
  23.   } 
  24. } 

方法二:

  1. /* 
  2.  自定义的删除函数,可以删除文件和递归删除文件夹 
  3. */ 
  4.  function my_del($path) 
  5. { 
  6.  if(is_dir($path)) 
  7.  { 
  8.    $file_list= scandir($path); 
  9.    foreach ($file_list as $file) 
  10.    { 
  11.     if( $file!='.' && $file!='..') 
  12.     { 
  13.      my_del($path.'/'.$file); 
  14.     } 
  15.    } 
  16.    @rmdir($path); 
  17.    //这种方法不用判断文件夹是否为空, 
  18.    //因为不管开始时文件夹是否为空,到达这里的时候,都是空的   
  19.  } 
  20.  else 
  21.  { 
  22.   @unlink($path); 
  23.   //这两个地方最好还是要用@屏蔽一下warning错误,看着闹心 
  24.  } 
  25. } 
  26. $path='d:/技术文档 - 副本'; 
  27. //要删除的文件夹 
  28. //如果php文件不是ANSI,而是UTF-8模式, 
  29. //而且要删除的文件夹中包含汉字字符的话,调用函数前需要转码 
  30. //$path=iconv( 'utf-8', 'gb2312',$path ); 
  31. my_del($path); 

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

Tags: php递归删除文件夹

分享到: