项目涉及文档处理,用户上传的包括zip和rar压缩包,需要先将压缩包解压后再作处理。对于zip压缩包,由于php自带zip扩展,可以直接解压。

解压zip压缩包:

$file = "/opt/data/upload/testfile.zip";

$outPath = "/opt/data/upload/testfile";

$zip = new ZipArchive();

$openRes = $zip->open($file);

if ($openRes === TRUE) {

$zip->extractTo($outPath);

$zip->close();

}

对于rar压缩包,需要先为php安装rar扩展。

安装rar扩展:

wget http://pecl.php.net/get/rar-4.0.0.tgz

gunzip rar-4.0.0.tgz

tar -xvf rar-4.0.0.tar

cd rar-4.0.0

phpize

./configure && make && make install

# 报错

configure: error: Cannot find php-config. Please use --with-php-config=PATH

# 运行./configure 时指定php-config路径即可

./configure --with-php-config=/usr/local/php/bin/php-config

make && make install

配置rar扩展:

# 新建 /usr/local/php/conf.d/rar.ini,内容

extension=rar.so

重启php-fpm,看一下phpinfo();

可以看到已经成功安装了rar,可以来测试一下解压rar文件。

解压RAR压缩包:

$file = "/opt/data/upload/testfile.zip";

$outPath = "/opt/data/upload/testfile";

$rar_file = rar_open($file);

if ($rar_file) {

$entries = rar_list($rar_file);

foreach ($entries as $entry) {

$entry->extract($outPath);

}

rar_close($rar_file);

}

这样就搞定用户上传的压缩包解压的问题了。

php解压缩zip和rar压缩包文件

更多精彩,敬请关注本博微信公众号:hsu1943

php zip解压,php解压缩zip和rar压缩包文件相关推荐

  1. linux(64位)安装rar,并解压被压缩成多个rar的文件

    安装rar 下载rar安装包 下载地址:http://www.rarsoft.com/download.htm, 根据操作系统选择对应的二进制安装包,我的Redhat操作系统为64bit,因此下载的r ...

  2. linux解压多个part rar,【linux】安装rar,并解压被压缩成多个rar的文件

    rar  官网:http://www.rarsoft.com/download.htm 选择  RAR for  linux   (注意你的系统是32位还是64位) 1 安装命令: $ cd /roo ...

  3. linux 解压所有以zip结尾的文件_Linux下的压缩zip,解压缩unzip命令详解及实例

    摘自:https://www.cnblogs.com/yves0923/p/10965021.html Linux下的压缩解压缩命令详解及实例 实例:压缩服务器上当前目录的内容为xxx.zip文件 z ...

  4. windows 7下如何卸载重装mysql 压缩包版百度经验_windows下安装、卸载mysql服务的方法(mysql 5.6 zip解压...

    MySQL是一个小巧玲珑但功能强大的数据库,目前十分流行.但是官网给出的安装包有两种格式,一个是msi格式,一个是zip格式的.很多人下了zip格式的解压发现没有setup.exe,面对一堆文件一头雾 ...

  5. .xz是什么文件怎么解压_zip解压app下载-zip解压app安卓版下载v11.5.6

    zip解压APP为用户提供了完全免费的文件解压缩功能服务,超高效的压缩和解压,支持将文档.图片.PDF和图片等多种文件夹进行压缩,压缩和解压的过程稳定高效,不会 影响文件打开也不会有乱码出现.还可以解 ...

  6. 安卓zip解压软件_手机压缩软件ZArchiver下载、使用教程丨免费、中文,支持7z、zip、rar等所有格式...

    点击上方云中栖居关注 ▲ 图片丨Google Play应用商店中的ZArchiver免费版.ZArchiver Donate捐赠版(Pro专业版)图标,两个版本功能基本上一样. ZArchiver自称 ...

  7. 解压上传zip文件并获取excel表数据

    1.maven <!-- 解压rar --><dependency><groupId>com.github.junrar</groupId><ar ...

  8. 惊爆:当Python代码遇到zip解压炸弹,未做防护的你后悔莫及!

    zip解压炸弹 在文章的开头,让我们先来介绍一下zip解压炸弹是个 什么妖怪! 解压炸弹是指解压缩后能够产生巨大的数据量的可疑压缩文件!默认设置是文件扫描中产生500MB以上解压数据的是"解 ...

  9. UBUNTU zip 解压文件方法

    UBUNTU zip 解压文件方法 最近使用ubuntu系统,逐步研究其功能.图形化解压虽然说做的不错,但是要解压多个文件还是一个很麻烦的过程.自己根据网上教程学习,特记录. zip解压单个文件 zi ...

最新文章

  1. 问题 A: 约瑟夫问题(普及第一关模拟)
  2. 前端开发知识点解答-HTML-面试
  3. Java,C实现约瑟夫环,一元多项式运算器
  4. html给box加超链接,java – 如何使用pdfbox在pdf中添加超链接
  5. E20170816-mk
  6. 侦听键盘,将data写入文件data.out(成功版本)
  7. JavaWeb核心编程之(三.6)HttpServlet
  8. VBA教程初级(一):简单宏
  9. lammps教程:以Cu纳米磨削为例详解region命令
  10. 身份证归属地数据包下载
  11. 微信语音导出-微信收藏语音导出-微信语音转MP3文件
  12. Mybatis一对一、一对多、多对多查询。+MYSQL
  13. xposed修改手机屏幕分辨率
  14. 【线性代数】6-6:相似矩阵(Similar Matrices)
  15. 使用Windows平台的VS2022来调试AKStream
  16. logo免费在线设计,给自己的logo寻找灵感
  17. 每日一佳——SVM Optimization: Inverse Dependence on Training Set Size(Shai Shalev-Shwartz et al,ICML,2008)
  18. 通信专业实务(四)——互联网
  19. 从键盘上输入两个字符串,将两个字符串首尾相连接后,再输出新的字符串(c语言)
  20. -XX:+PrintGCTimeStamps 打印CG发生的时间戳

热门文章

  1. 我应该买Arduino还是Raspberry Pi?
  2. 腾讯财报:2018年Q3腾讯净利润197.1亿元 同比增长15%
  3. Android开发基础规范(一)
  4. 三文鱼媲美。传奇si服
  5. python问题:IndentationError:expected an indented blo
  6. 计算机安全技术(第2版)
  7. 广州蓝景分享—Web前端开发培训机构如何选择
  8. jQuery 库中的 $() 是什么
  9. 手机屏幕技术浅述(TFT、SLCD、AMOLED、NOVA、IPS、ASV)
  10. nginx 404 not found错误查找