欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

php删除目录及所有文件的方法举例

程序员文章站 2022-03-29 20:56:36
...
  1. /**
  2. * 循环删除目录和文件函数
  3. * @delDirAndFile
  4. * @param $dirName
  5. * @edit bbs.it-home.org
  6. function delDirAndFile( $dirName )
  7. {
  8. if ( $handle = opendir( "$dirName" ) ) {
  9. while ( false !== ( $item = readdir( $handle ) ) ) {
  10. if ( $item != "." && $item != ".." ) {
  11. if ( is_dir( "$dirName/$item" ) ) {
  12. delDirAndFile( "$dirName/$item" );
  13. } else {
  14. if( unlink( "$dirName/$item" ) )echo "成功删除文件: $dirName/$item
  15. \n”;
  16. }
  17. }
  18. }
  19. closedir( $handle );
  20. if( rmdir( $dirName ) )echo “成功删除目录: $dirName
  21. \n”;
  22. }
  23. }
  24. ?>
复制代码

函数2,仅删除指定目录下的文件,不删除目录文件夹。

  1. /**
  2. * 循环目录下的所有文件
  3. * @func delFileUnderDir
  4. * @param $dirName
  5. * @edit bbs.it-home.org
  6. */
  7. function delFileUnderDir( $dirName )
  8. {
  9. if ( $handle = opendir( "$dirName" ) ) {
  10. while ( false !== ( $item = readdir( $handle ) ) ) {
  11. if ( $item != "." && $item != ".." ) {
  12. if ( is_dir( "$dirName/$item" ) ) {
  13. delFileUnderDir( "$dirName/$item" );
  14. } else {
  15. if( unlink( "$dirName/$item" ) )echo "成功删除文件: $dirName/$item
  16. \n”;
  17. }
  18. }
  19. }
  20. closedir( $handle );
  21. }
  22. }
  23. ?>
复制代码

下面来看具体的调用实例。 1,删除一个名叫”upload”的同级目录即此目录下的所有文件:

  1. delDirAndFile( 'upload');
  2. ?>
复制代码

2,删除一个名叫”upload”目录下的所有文件(但无需删除目录文件夹):

  1. delFileUnderDir( 'upload');
  2. ?>
复制代码