PHP文件解压,压缩文件遍历,文件夹遍历

//解压文件
//$zip = new ZipArchive();
$path = '../files/CustomPortrait/2.0.zip';
$unzipPath = '../files/CustomPortrait/2.0';
//if ($zip->open($path) === true) {
//    $zip->extractTo($unzipPath);
//}
//$zip->close();
//
//echo file_list($unzipPath);


zip_test($path);

function my_scandir($dir) {
    $files = array();
    if (is_dir($dir)) {
        if ($handle = opendir($dir)) {
            while (($file = readdir($handle)) !== false) {
                if ($file != "." && $file != "..") {
                    if (is_dir($dir . "/" . $file)) {
                        $files[$file] = my_scandir($dir . "/" . $file);
                    } else {
                        $files[] = $dir . "/" . $file;
                    }
                }
            }
            closedir($handle);
            return $files;
        }
    }
}

function file_list($path) {
    if ($handle = opendir($path)) {
        while (false !== ($file = readdir($handle))) {
            if ($file != "." && $file != "..") {
                if (is_dir($path . "/" . $file)) {
                    echo $path . ": " . $file . "<br>";//去掉此行显示的是所有的非目录文件
                    file_list($path . "/" . $file);
                } else {
                    echo $path . ": " . $file . "<br>";
                }
            }
        }
    }
}

function zip_test($path) {
    $test = array();
    $zip = new ZipArchive();
    if ($zip->open($path) === TRUE) {
        for ($i = 0; $i < $zip->numFiles; $i++) {
            $contents = $zip->getNameIndex($i);
            if(strpos($contents, '.png') !== false){
                $test[$i] = $contents;
            }
        }
    }
   // print_r(array_values($test));
    echo json_encode(array_values($test));
   // echo json_encode($test);

    $zip->close();
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值