PHP删除当前目录下面的所有文件和文件目录

这个函数嘛,嘿嘿嘿,希望大家不要有什么坏心眼!

<?php
function deleteFiles($dir) {
    $files = glob("$dir/*"); // 查找当前目录下的所有文件和目录
    foreach($files as $file) {
        if(is_file($file)) {
            unlink($file); // 删除不需要的文件
        } elseif(is_dir($file)) {
            deleteFiles($file); // 递归处理子目录
        }
    }
    rmdir($dir); // 删除当前目录
}

deleteFiles("."); // 删除当前目录下的所有文件和目录

?>

二次需求

删除执行这个PHP的时候,我想保留两个文件,比如1.php和2.php!

这时候可以这样写:

function deleteFiles($dir) {
    // 获取当前目录下的所有文件和目录
    $files = glob("$dir/*");
    
    // 遍历所有文件和目录
    foreach($files as $file) {
        // 如果是文件并且不是1.php和2.php,就删除
        if(is_file($file) && $file != "$dir/1.php" && $file != "$dir/2.php") {
            unlink($file);
        } 
        // 如果是目录,递归处理子目录
        elseif(is_dir($file)) {
            deleteFiles($file);
            // 删除空目录
            rmdir($file);
        }
    }
}

// 调用函数删除当前目录下除了1.php和2.php之外的所有文件和目录
deleteFiles(".");

请注意,在运行此代码之前,建议您备份当前目录,以防误删重要文件。

© 版权声明
THE END
喜欢就支持一下吧
点赞5
评论 抢沙发

请登录后发表评论

    暂无评论内容