>백엔드 개발 >PHP 튜토리얼 >php删除不是空目录实现代码_PHP教程

php删除不是空目录实现代码_PHP教程

WBOY
WBOY원래의
2016-07-13 16:54:41945검색

php中自带的函数rmdir只能删除空目录,如果你要删除带有文件或有目录的目录,需要递归与unlink一起使用了,下面我们看看删除不是空目录的自定义函数。

php教程删除不是空目录实现代码
本教程先是简单简介了rmdir来删除空目录,然后再引伸到删除不是空目录的自定义函数的写法与实现代码。
*/
//rmdir(dir,context) rmdir() 函数删除空的目录。

$path ='';
if( is_dir( $path ) )
{
 if( rmdir( $path ) )
 {
  echo '删除目录成功';
 }
}
else
{
 echo '不是目录';
}

/*
总结
    php中自带的函数rmdir只能删除空目录,如果你要删除带有文件或有目录的目录,需要递归与unlink一起使用了,下面我们看看删除不是空目录的自定义函数。
*/
/**
 * 删除文件或文件夹(递归)
 * @param array $filelist
 * @param string $option
 * @param string $fileext 要删除的文件扩展名 格式:'html'
 * @return void
 */

 function rm($filelist, $option='r', $fileext = null, $if_rmdir = false) {
  if (!is_array($filelist)) {
   $filelist = explode('|', $filelist);
  }
  foreach ($filelist as $filename) {
   if (is_file($filename)) {
    if (empty($fileext)) {
     unlink($filename);
    } else {
     if (substr(strrchr($filename, '.'), 1 ) == $fileext){
      unlink($filename);
     }
    }
   } elseif (is_dir($filename)) {
    if (strpos($option, 'r')!==false) {
     $file_list_ = ls($filename);
     foreach ($file_list_ as $fi => $file) {
      $file_list_[$fi] = $filename . $file;
     }
     rm($file_list_, $option, $fileext);
    }
    if ($if_rmdir) {
     rmdir($filename);
    }
   }
  }
 }

//调用方法

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/631728.htmlTechArticlephp中自带的函数rmdir只能删除空目录,如果你要删除带有文件或有目录的目录,需要递归与unlink一起使用了,下面我们看看删除不是空目录的...
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.