PHP递归函数方式编写一个删除指定目录方法

原创 阁主  2026-03-16 12:35:33  阅读 6517 次 评论 0 条
摘要:

使用PHP递归函数方式编写一个删除指定目录方法。

效果

删除目录成功

代码

核心函数:

/**
 * delete_dir_file 删除指定目录
 * params: 指定需要删除的目录路径
 * return :boolean 删除成功返回true 否则false
 */
function delete_dir_file($dir)
{
    // 声明一个初始状态 
    $flag = false;
    if (is_dir($dir)) {
        if ($handle = opendir($dir)) {
            while (($file = readdir($handle)) !== false) {
                // echo $file . '<br>';
                if ($file !== '.' && $file !== '..') {
                    // rmdir($dir . $file);
                    if (is_dir($dir . DIRECTORY_SEPARATOR . $file)) {
                        delete_dir_file($dir . DIRECTORY_SEPARATOR . $file);
                    } else {
                        unlink($dir . DIRECTORY_SEPARATOR . $file);
                    }
                }
            };
        }
        // 关闭打开的目录句柄
        closedir($handle);
        if (rmdir($dir)) {
            $flag  = true;
        }
    }
    return $flag;
}

调用方式:

// 删除temp目录
$del_path = __DIR__ . DIRECTORY_SEPARATOR . 'temp';

if (delete_dir_file($del_path)) {
    echo json_encode(['msg' => '缓存目录删除成功', 'code' => 0], 320);
} else {
    echo json_encode(['msg' => '缓存目录删除失败', 'code' => 1], 320);
};
本文地址:https://www.mainblog.cn/335.html
版权声明:本文为原创文章,版权归 阁主 所有,欢迎分享本文,转载请保留出处!
免责申明:有些内容源于网络,没能联系到作者。如侵犯到你的权益请告知,我们会尽快删除相关内容。
NEXT:已经是最新一篇了

评论已关闭!