php中删除指定文件夹下的内容

前言

在之前做远程文件下载到本地然后打包下载的功能中存在文件重复的问题,导致下载的压缩中有之前下载过的文件,下边介绍一种方法可以在下载之前删除指定文件夹中的文件,保证每次都是最新的文件。

解决方法

    /**
     * 删除指定文件夹下的内容
     * @param $dirname
     * @param boolean $self
     * @return void
     */
    function do_rmdir($dirname, $self = false)
    {
        //检查文件或目录是否存在
        if (!file_exists($dirname)) {
            return false;
        }
        //是文件进行删除
        if (is_file($dirname) || is_link($dirname)) {
            return unlink($dirname);
        }
        //开始读取目录
        $dir = dir($dirname);
        if ($dir) {
            while (false !== $entry = $dir->read()) {
                if ($entry == '.' || $entry == '..') {
                    continue;
                }
                //进行文件删除
                do_rmdir($dirname . '/' . $entry);
            }
        }
        //关闭目录
        $dir->close();
        //是否删除本身文件夹
        $self && rmdir($dirname);
        //成功返回
        return true;
    }

使用方法为直接调用,传入需要删除的文件夹路径。

//清空文件夹中的内容
do_rmdir(storage_path('app/public/document/remoteFiles/'));
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值