使用php删除所有内容的文件夹

Imr*_*l.H 0 php

我有一个名为"gallery"的主文件夹.在这个文件夹中有一些子文件夹,如"动物","树"等文件夹"动物"包含一些图片等.假设我要删除包含所有图片的"animal"文件夹,怎么办呢?我试过了-

rmdirr($_SERVER['DOCUMENT_ROOT']."admin/gallery/animal");
Run Code Online (Sandbox Code Playgroud)

但在服务器中,它删除了整个"gallery"文件夹中的所有内容.请告诉我我做错了什么,并给我一个解决方案.提前致谢.

JJJ*_*JJJ 5

如果没有子文件夹,您可以使用glob()之前清空目录rmdir():

foreach( glob( "/path/to/dir/*.*" ) as $filename ) {
    unlink( $filename );
}

rmdir( "/path/to/dir" );
Run Code Online (Sandbox Code Playgroud)

顺便说一句,rmdir()不应该删除任何文件.如果目录不为空,它就会失败.您可能希望确保代码中没有其他任何内容导致父目录被清除.

  • 然后使用`glob("/ path/to/dir/*")`. (2认同)