• PHP压缩文件夹 php


    $path = PUBLIC_DIR.'/images/';    //待压缩文件夹父目录
    $zipPath = PUBLIC_DIR.'/images_zip/'; //压缩文件保存目录
    
    !is_dir($zipPath) ? mkdir($zipPath, 0755, true) : '';
    
    // Initialize archive object
    $zip = new ZipArchive();
    
    $dir_list = scandir($path);
    
    if (empty($dir_list)) {
        return false;
    }
    
    foreach($dir_list as $dir_name) {
        if ($dir_name == '.' || $dir_name == '..') {
            continue;
        }
        $dir_path = $path.$dir_name;    //待压缩目录
        if (!is_dir($dir_path)) {
            continue;
        }
    
        $zipFile = $zipPath.$dir_name.'.zip';   //压缩包名称
        $zip->open($zipFile, ZipArchive::CREATE | ZipArchive::OVERWRITE);
    
        $file_list = scandir($dir_path);    //文件名
        foreach ($file_list as $file_name) {
            if ($file_name == '.' || $file_name == '..') {
                continue;
            }
    
            $zip->addFile($dir_path.'/'.$file_name, $file_name);    //第二个参数使压缩文件名为待压缩文件原名(否则压缩包里会有多级目录)
    
        }
        $zip->close();
    
    }  

    待压缩文件夹:

    压缩后压缩包:

    打开压缩包看效果:

  • 相关阅读:
    vue 解决 数组和对象数据画面不更新
    js 闭包
    php 后台登陆逻辑
    PHP tp3.2模型对数据进行多表查询
    简便的三级联动
    JQ三级联动的写法
    js 选项卡
    HTML DOM对象 获取各种类型的节点
    java script 日期对象Date()
    java script 算术对象
  • 原文地址:https://www.cnblogs.com/IT-Crowd/p/11926437.html
Copyright © 2020-2023  润新知