首頁 > 後端開發 > php教程 > php如何刪除目前目錄及其目錄下的所有檔案? (代碼)

php如何刪除目前目錄及其目錄下的所有檔案? (代碼)

不言
發布: 2023-04-05 12:18:02
轉載
2226 人瀏覽過

這篇文章帶給大家的內容是關於php如何刪除目前目錄及其目錄下的所有檔案? (程式碼),有一定的參考價值,有需要的朋友可以參考一下,希望對你有幫助。

使用PHP遍歷一個目錄下的所有目錄及文件,並刪除該目錄及其目錄下的所有子目錄和文件,本次程式碼透過遞歸的方式來實現。

用到的函數:

scandir($path) 遍歷一個目錄下所有檔案並傳回陣列。
unlink($filename) 刪除檔案。
rmdir($path) 只刪除空資料夾。

PHP程式碼:

/**
 * 删除当前目录及其目录下的所有目录和文件
 * @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);
    }
}
登入後複製

以上是php如何刪除目前目錄及其目錄下的所有檔案? (代碼)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
php
來源:cnblogs.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板