iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > PHP编程 >怎么使用php生成zip压缩包
  • 815
分享到

怎么使用php生成zip压缩包

2023-06-14 14:06:45 815人浏览 泡泡鱼
摘要

这篇文章给大家分享的是有关怎么使用PHP生成zip压缩包的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。php有什么用php是一个嵌套的缩写名称,是英文超级文本预处理语言,它的语法混合了C、Java、Perl以及p

这篇文章给大家分享的是有关怎么使用PHP生成zip压缩包的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

php有什么用

php是一个嵌套的缩写名称,是英文超级文本预处理语言,它的语法混合了C、Java、Perl以及php自创新的语法,主要用来做网站开发,许多小型网站都用php开发,因为php是开源的,从而使得php经久不衰。

压缩一个文件

我们将一个文件生成一个压缩包。

<?php$path = "c:/wamp/www/log.txt";$filename = "test.zip";$zip = new ZipArcHive();$zip->open($filename,ZipArchive::CREATE);   //打开压缩包$zip->addFile($path,basename($path));   //向压缩包中添加文件$zip->close();  //关闭压缩包

上述代码将c:/wamp/www/log.txt文件压缩生成了test.zip,并保存在当前目录。

压缩多个文件

压缩多个文件,其实就是addFile执行多次,可以通过数组的遍历来实现。

<?php$fileList = array(    "c:/wamp/www/log.txt",    "c:/wamp/www/weixin.class.php");$filename = "test.zip";$zip = new ZipArchive();$zip->open($filename,ZipArchive::CREATE);   //打开压缩包foreach($fileList as $file){    $zip->addFile($file,basename($file));   //向压缩包中添加文件}$zip->close();  //关闭压缩包

压缩一个目录

<?phpfunction addFileToZip($path,$zip){    $handler=opendir($path); //打开当前文件夹由$path指定。    while(($filename=readdir($handler))!==false){        if($filename != "." && $filename != ".."){//文件夹文件名字为'.'和‘..',不要对他们进行操作            if(is_dir($path."/".$filename)){// 如果读取的某个对象是文件夹,则递归                addFileToZip($path."/".$filename, $zip);            }else{ //将文件加入zip对象                $zip->addFile($path."/".$filename);            }        }    }    @closedir($path);}$zip=new ZipArchive();if($zip->open('rsa.zip', ZipArchive::OVERWRITE)=== TRUE){    addFileToZip('rsa/', $zip); //调用方法,对要打包的根目录进行操作,并将ZipArchive的对象传递给方法    $zip->close(); //关闭处理的zip文件}

压缩并下载zip包

我的时候,我们需要打包之后,提供下载,然后删除压缩包。

可以分为以下几步:

  1. 判断给出的路径,是文件夹,还是文件。文件夹还需要遍历添加文件。

  2. 设置相关文件头,并使用readfile函数提供下载。

  3. 使用unlink函数删除压缩包

<?phpfunction addFileToZip($path,$zip){    $handler=opendir($path); //打开当前文件夹由$path指定。    while(($filename=readdir($handler))!==false){        if($filename != "." && $filename != ".."){//文件夹文件名字为'.'和‘..',不要对他们进行操作            if(is_dir($path."/".$filename)){// 如果读取的某个对象是文件夹,则递归                addFileToZip($path."/".$filename, $zip);            }else{ //将文件加入zip对象                $zip->addFile($path."/".$filename);            }        }    }    @closedir($path);}$zip=new ZipArchive();if($zip->open('rsa.zip', ZipArchive::OVERWRITE)=== TRUE){    $path = 'rsa/';    if(is_dir($path)){  //给出文件夹,打包文件夹        addFileToZip($path, $zip);    }else if(is_array($path)){  //以数组形式给出文件路径        foreach($path as $file){            $zip->addFile($file);        }    }else{      //只给出一个文件        $zip->addFile($path);    }    $zip->close(); //关闭处理的zip文件}

感谢各位的阅读!关于“怎么使用php生成zip压缩包”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

--结束END--

本文标题: 怎么使用php生成zip压缩包

本文链接: https://www.lsjlt.com/news/271540.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 怎么使用php生成zip压缩包
    这篇文章给大家分享的是有关怎么使用php生成zip压缩包的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。php有什么用php是一个嵌套的缩写名称,是英文超级文本预处理语言,它的语法混合了C、Java、Perl以及p...
    99+
    2023-06-14
  • 如何使用php生成zip压缩包
    目录压缩一个文件压缩多个文件压缩一个目录压缩并下载zip包压缩一个文件 我们将一个文件生成一个压缩包。 <?php $path = "c:/wamp/www/log...
    99+
    2024-04-02
  • PHP中zip压缩工具扩展包怎么用
    这篇文章主要介绍了PHP中zip压缩工具扩展包怎么用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。PHP的zip压缩工具扩展包学习总算到了 PHP 的拿手好戏上场了,前面我们...
    99+
    2023-06-15
  • html文件怎么压缩成zip
    将html文件压缩成zip文件涉及收集html文件及其相关资源(如css、javascript、图片),将其整理到一个文件夹中,并使用压缩工具(如windows的“发送到”功能或mac的...
    99+
    2024-04-02
  • C# 使用原生 System.IO.Compression 实现 zip 的压缩与解压
    zip 是一个非常常见的压缩包格式,本文主要用于说明如何使用代码 文件或文件夹压缩为 zip压缩包及其解压操作,我们采用的是 微软官方的实现,所以也不需要安装第三方的组件包。 使用的...
    99+
    2024-04-02
  • windows怎么压缩文件成zip格式
    这篇文章主要讲解了“windows怎么压缩文件成zip格式”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“windows怎么压缩文件成zip格式”吧!压缩文件成zip格式的方法:首先右键点击想...
    99+
    2023-07-02
  • vue-cli3中如何打包成zip压缩文件
    目录vue-cli3打包成zip压缩文件如何实现?思考vue-cli3打包优化vue-cli3打包成zip压缩文件 目前在我司,采用前后分离的方式开发,这就会面临一个问题。那就是部署...
    99+
    2022-11-13
    vue-cli3打包 zip压缩文件 vue-cli3打包成zip
  • java中怎么使用zip压缩字符串
    在Java中,可以使用java.util.zip包来压缩字符串。以下是一个简单的示例代码: import java.io.ByteA...
    99+
    2024-03-14
    java
  • go怎么压缩和解压zip文件
    本篇内容主要讲解“go怎么压缩和解压zip文件”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“go怎么压缩和解压zip文件”吧!压缩zipfunc Zip(dest strin...
    99+
    2023-07-02
  • Win10如何使用自带压缩、解压zip压缩文件功能
      Windows系统自带不少工具,到了Win10,好用的功能依然保留,比如压缩/解压zip压缩文件的功能。压缩文件能为系统节省空间,这一功能必不可少。Win10如何使用压缩/解压zip压缩文件功能?   Win10压缩...
    99+
    2023-06-10
    Win10 压缩 功能 自带 压缩文件
  • VB.NET中怎么压缩ZIP文件
    今天就跟大家聊聊有关VB.NET中怎么压缩ZIP文件,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。VB.NET压缩ZIP文件代码示例:Public Function&nbs...
    99+
    2023-06-17
  • linux怎么将目录打包成压缩包
    在Linux系统中,可以使用tar命令将目录打包成压缩包。具体步骤如下:1. 打开终端(Terminal)。2. 使用cd命令进入要...
    99+
    2023-10-19
    linux
  • python如何使用Zip()压缩函数
    小编给大家分享一下python如何使用Zip()压缩函数,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!Zip()压缩函数zip()函数在一对一匹配连接多个迭代器方...
    99+
    2023-06-27
  • 怎么使用vue打包gzip压缩
    这篇文章主要讲解了“怎么使用vue打包gzip压缩”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么使用vue打包gzip压缩”吧!开局一张图:可以看出,在项目部署后,我们的资源文件请求都会...
    99+
    2023-07-02
  • Java怎么实现创建Zip压缩包并写入文件
    Java怎么实现创建Zip压缩包并写入文件,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。Java是什么Java是一门面向对象编程语言,可以编写桌面应用程序、Web应用程序、...
    99+
    2023-06-26
  • js实现根据文件url批量压缩下载成zip包
    目录前言1. 所需包2. 安装3. 引入4. 完整代码解析使用5. 部分代码解析解析 Bolb 与 arraybuffer前言 项目开发中,产品经理提了这样一个需求:将系统中的附件实...
    99+
    2023-02-09
    js url批量压缩zip包 js url批量压缩
  • linux如何将几个文件和目录同时压缩成一个zip格式的压缩包
    ...
    99+
    2024-04-02
  • java中zip怎么压缩多个文件
    在Java中,你可以使用java.util.zip.ZipOutputStream类来压缩多个文件。以下是一个简单的例子来演示如何压...
    99+
    2024-03-14
    java
  • vue生成gzip压缩包部署到nginx的示例
    目录vue生成gzip压缩包部署到nginx一、vue打包生成gzip包二、生成压缩包三、服务器开启gzip四、验证是否生效Vue  webpack 项目自动打包...
    99+
    2022-12-08
    vue部署gzip压缩包到nginx vue打包gzip压缩 vue打包压缩 gzip压缩配置
  • python怎么批量压缩文件生成密码
    要批量压缩文件并生成密码,可以使用Python的zipfile库和random库。下面是一个示例代码,用于批量压缩指定文件夹中的所有...
    99+
    2023-08-25
    python
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作