Home  >  Article  >  Backend Development  >  How to delete all files in a directory in php?

How to delete all files in a directory in php?

青灯夜游
青灯夜游Original
2020-11-05 14:08:592959browse

php method to delete all files in a directory: first use the scandir() function to traverse all files in a directory and return an array; then use foreach to traverse the array, and use the unlink() and rmdir() functions in foreach to delete All subdirectories and files in this directory will do.

How to delete all files in a directory in php?

For more programming-related knowledge, please visit: Introduction to Programming! !

php delete all files in the directory

Use PHP to traverse all directories and files in a directory and delete the directory and its directory All subdirectories and files, this code is implemented recursively.

Mainly used functions:

  • scandir($path) traverses all files in a directory and returns an array.

  • unlink($filename) Delete the file.

  • rmdir($path) only deletes empty folders.

PHP code:

/**
 * 删除当前目录及其目录下的所有目录和文件
 * @param string $path 待删除的目录
 * @note  $path路径结尾不要有斜杠/(例如:正确[$path='./static/image'],错误[$path='./static/image/'])
 */
function deleteDir($path) {

    if (is_dir($path)) {
        //扫描一个目录内的所有目录和文件并返回数组
        $dirs = scandir($path);

        foreach ($dirs as $dir) {
            //排除目录中的当前目录(.)和上一级目录(..)
            if ($dir != '.' && $dir != '..') {
                //如果是目录则递归子目录,继续操作
                $sonDir = $path.'/'.$dir;
                if (is_dir($sonDir)) {
                    //递归删除
                    deleteDir($sonDir);

                    //目录内的子目录和文件删除后删除空目录
                    @rmdir($sonDir);
                } else {

                    //如果是文件直接删除
                    @unlink($sonDir);
                }
            }
        }
        @rmdir($path);
    }
}

For more programming-related knowledge, please visit: Introduction to Programming! !

The above is the detailed content of How to delete all files in a directory in php?. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn