php利用ZipArchive类实现文件压缩与解压

github项目

1、Linux 安装zlib库

XML 复制代码
cd /usr/local/src
wget https://zlib.net/current/zlib.tar.gz
tar -zxvf zlib.tar.gz
cd zlib-1.3
./configure
make && make install

2、zlib的使用

php 复制代码
         $all_name = 'all.zip';
        // 创建ZipArchive对象
        $zip_all = new ZipArchive();
        if ($zip_all->open('all.zip', ZipArchive::CREATE) === TRUE) {
             $zip_all->addFile(dirname(dirname(__FILE__)) .'666.docx', '666.docx');
            // 关闭Zip文件
            $zip_all->close();
        }
        //下载Zip文件到本地
        header('Content-Type: application/zip');
        header('Content-disposition: attachment; filename=' . $all_name . '');
        header('Content-Length: ' . filesize($all_name));
        readfile($all_name);
        unlink($all_name);
        exit;

3、方法参考链接

相关推荐
全干engineer6 小时前
Web3-Web3.js核心操作:Metamask、合约调用、事件订阅全指南
开发语言·javascript·web3·区块链·智能合约
刘一说7 小时前
资深Java工程师的面试题目(六)数据存储
java·开发语言·数据库·面试·性能优化
江沉晚呤时7 小时前
EventSourcing.NetCore:基于事件溯源模式的 .NET Core 库
java·开发语言·数据库
火鸟27 小时前
Rust 通用代码生成器:莲花,红莲尝鲜版三十六,哑数据模式图片初始化功能介绍
开发语言·后端·rust·通用代码生成器·莲花·红莲·图片初始化功能
啾啾Fun7 小时前
Python类型处理与推导式
开发语言·windows·python
神仙别闹8 小时前
基于 Matlab 和 Truetime 的网络控制系统仿真
网络·matlab·php
Watermelo61710 小时前
内存泄漏到底是个什么东西?如何避免内存泄漏
开发语言·前端·javascript·数据结构·缓存·性能优化·闭包
粟悟饭&龟波功1 天前
Java—— ArrayList 和 LinkedList 详解
java·开发语言
冷雨夜中漫步1 天前
Java中如何使用lambda表达式分类groupby
java·开发语言·windows·llama
a4576368761 天前
Objective-c Block 面试题
开发语言·macos·objective-c