php解压缩zip和rar压缩包文件的方法
发布:smiling 来源: PHP粉丝网 添加日期:2021-12-04 16:59:24 浏览: 评论:0
项目涉及文档处理,用户上传的包括 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);
- }
这样就搞定用户上传的压缩包解压的问题了。
Tags: php解压缩zip php解压缩rar
- 上一篇:PHP批斗大会之缺失的异常详解
- 下一篇:PHP+redis实现微博的拉模型案例详解
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)