前言

近几日,用爬虫采集的了一些数据,存放到硬盘中,随着数据量越来越多,所以想上传到网盘当中,可是不加下密又觉得不放心,

所以开始用PHP的zip模块进行压缩加密.

开始

$zipArc = new \ZipArchive();

if ($zipArc->open('/home/test.zip', ZipArchive::CREATE | ZipArchive::OVERWRITE) === true) {

//设置密码 注意此处不是加密,仅仅是设置密码

if (!$zipArc->setPassword('password')) {

throw new RuntimeException('Set password failed');

}

//往压缩包内添加文件

$zipArc->addFile('/home/test.png', '1/test.png');

//加密文件 此处文件名及路径是压缩包内的

if (!$zipArc->setEncryptionName('1/test.png', ZipArchive::EM_AES_256)) {

throw new RuntimeException('Set encryption failed');

}

}

$zipArc->close();

注意事项

1 PHP7.2以下不支持加密

php7.2 以下是不支持加密的,我们看一下php官方文档中的解释

从PHP 7.2.0和libzip 1.2.0开始,密码用于解压缩归档,也是ZipArchive :: setEncryptionName() 和ZipArchive :: setEncryptionIndex()的默认密码。

以前,此功能仅设置用于解压缩存档的密码; 它没有将非密码保护的ZipArchive 变成受密码保护的ZipArchive。

也就是说php7.2之前,setPassword(‘password‘)这个方法仅仅是设置setEncryptionName()和setEncryptionIndex()的默认密码,却没有进行加密操作!!!,就问你坑不坑!!

2 方法找不到

提示没有setEncryptionName和setEncryptionIndex方法时,请编译时zip模块时用以下参数

--with-libzip

--enable-zip

3 目录结构问题

待压缩的文件目录,比说说是/home/test/a.png

压缩后,你发现压缩包内的目录结构是/home/test/a.png,

也就是说压缩包原封不动的保持了原来文件的目录.可是我们想自定义压缩包目录怎么办呢?

$a = '/home/test.png';

$b = '1/test.png';

//$a是待添加的文件路径 $b是压缩包内的路径

$zipArc->addFile($a, $b);

参考资料

原文:https://www.cnblogs.com/liuyublog/p/9606104.html

php压缩包 加密,php加密压缩文件相关推荐

  1. 暴力破解(一)——python脚本暴力破解 加密的zip压缩文件

    简介: zip格式是常见的压缩文件格式,它支持压缩时设置解压密码:有两种加密方式:1传统加密方式和普通的加密方式.传统加密方式是一种比较简单的加密方式,现在一般很少有人使用,而且压缩时 系统默认选择的 ...

  2. java zip文件加密_java自动压缩文件并加密

    实现功能:自动压缩并加密 /** * * @Title: zipFilesAndEncrypt * @Description: 将指定路径下的文件压缩至指定zip文件,并以指定密码加密,若密码为空,则 ...

  3. html设置上传文件类型压缩包,html5 上传压缩文件类型限制解决方案

    需求场景: 利用input 上传文件,限制文件类型为zip,或者rar压缩包类型. ①尝试通过accept限制,发现除了zip和rar文件,excel,doc等文件也能选择. ②于是,解决方案是通过对 ...

  4. java压缩文件,并对压缩包添加解压密码

    java压缩文件,并对压缩包添加解压密码 java自带的java.util.zip包只能压缩文件,不能对压缩包添加解压密码,添加解压密码需要借助第三方工具,目前最好用的是zip4j工具包,其api操作 ...

  5. linux好压iso压缩文件,好压压缩文件管理器新手指南

    好压压缩文件管理器:下载地址 好压HaoZip的控制台 一.ZIP.7Z与 TAR 格式      好压软件 可以创建三种不同的压缩文件格式: ZIP.7Z 和 TAR.下面是每一种格式的优点叙述 : ...

  6. 【分享】除了压缩文件,WinRAR还有这些好用的功能

    WinRAR是一款功能强大的压缩软件,可以解压缩RAR.ZIP及其它类型文件.但很多人不知道,除了解压.压缩文件,WinRAR还有其他的功能,今天小编就来分享一下. 功能一:锁定文件,禁止增删或修改压 ...

  7. Linux的zip压缩文件压缩和解压

    Linux的zip压缩文件压缩和解压 <Linux一线运维实战>清华大学出版社(即将出版) 通常,系统中的文件的可以被直接打开的,这就难免文件的内容被查看.另外,对于要归档保存的(压缩)文 ...

  8. 其它 以字典的方式 暴力破解 压缩文件密码

    以前加密了一个压缩文件,里面全是回忆的照片,结果密码搞忘记了,我勒个去,然后就在网上下载了个软件暴力破解,结果很明显,没有破解出来.然后自己就思索怎么破解. 一开始是加QQ群,让别人帮忙破解,仍然没有 ...

  9. Zip压缩文件没有解压密码怎么办?

    Zip压缩文件没有解压密码怎么办? 在平时,我们难免的需要到浏览器上面寻找一些需要的资源,可往往下载好了zip文件后,解压时却需要密码.真的让人很痛苦.那有没有什么办法可以破解zip解压时需要的密码呢 ...

  10. Linux 打包压缩-文件压缩-压缩工具【unzip】解压使用基本介绍

    unzip 用于解压缩由zip命令压缩的压缩包 补充说明 unzip命令 用于解压缩由zip命令压缩的".zip"压缩包. 语法 unzip(选项)(参数) 选项 -c:将解压缩的 ...

最新文章

  1. Android Properties 存储
  2. ARM Keil MDK开发STM32工程模板
  3. 【转载】恼人的函数指针(一)
  4. Java并发编程之显式锁(Lock)使用
  5. 菜鸟创业记--第四天
  6. gurobi和java_Gurobi和java和空解决方案
  7. 【git】搭建git服务器
  8. 一张图看懂字节跳动8年创业史,太励志了吧
  9. 面试准备每日五题:C++(四)——typedefdefine、指针常量、队列栈、地址赋值、C和C++结构体
  10. 我是做php的个子矮,当一个矮个子的烦恼作文
  11. GPS Programming Tips for Windows Mobile
  12. 微型计算机中NOP指令,PLC指令表
  13. 如何根据经纬度查询地理位置
  14. 论信贷企业信用评级与债券信用评级的关系
  15. 【FPGA】FPGA程序的固化和下载(sd卡)
  16. ce变速注入dll失败_调用CE变速DLL注入的软件含HOOK模块
  17. opencv 求矩阵的逆
  18. 4个方面告诉你Stimulsoft.Drawing的作用和使用方式|附下载链接
  19. Pycharm远程连接服务器来跑代码
  20. java求方程的根运行图_Java程序设计(十四)----一个求一元二次方程根

热门文章

  1. C语言打印cav,最近大热的Cav Empt(C.E),你了解?
  2. 笔记本电脑拔掉电源自动切换性能模式
  3. B. Ordinary Numbers
  4. multisim常用d触发器_请问这个符号的d触发器在multisim中的芯片代号是什么
  5. java中快速排序的优化
  6. position详解
  7. 爬虫遇到图片禁止访问(如403)
  8. ROS kinetic 连接实体机器人UR10(使用ur_morden_driver) catkin_make 时报错
  9. 根据K线图与移动平均线的位置决定卖出点五绝招
  10. 驱寒药不妨试试这几种食物