php解压缩zip和rar压缩包文件的方法

 更新时间:2019年07月10日 08:57:45   作者:行星带  
项目涉及文档处理,用户上传的包括 zip 和 rar 压缩包,需要先将压缩包解压后再作处理。这篇文章主要介绍了php解压缩zip和rar压缩包文件,需要的朋友可以参考下

项目涉及文档处理,用户上传的包括 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压缩包文件的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

相关文章

  • 推荐25款php中非常有用的类库

    推荐25款php中非常有用的类库

    作为一个PHP开发者,现在是一个令人激动的时刻。每天有许许多多有用的库分发出来,在Github上很容易发现和使用这些库。今天我来给大家推荐25款非常有用的库
    2014-09-09
  • thinkphp5 加载静态资源路径与常量的方法

    thinkphp5 加载静态资源路径与常量的方法

    这篇文章主要介绍了thinkphp5 加载静态资源路径与常量的方法的相关资料,需要的朋友可以参考下
    2017-12-12
  • Zend Framework连接Mysql数据库实例分析

    Zend Framework连接Mysql数据库实例分析

    这篇文章主要介绍了Zend Framework连接Mysql数据库的方法,以完整实例形式分析了Zend Framework连接MySQL数据库的具体步骤与相关实现技巧,需要的朋友可以参考下
    2016-03-03
  • 浅谈PHP链表数据结构(单链表)

    浅谈PHP链表数据结构(单链表)

    下面小编就为大家带来一篇浅谈PHP链表数据结构(单链表)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-06-06
  • php 问卷调查结果统计

    php 问卷调查结果统计

    一个新产品投入市场,要先做问卷调查,考察这个产品在市场的需求量,本篇文章主要跟大家介绍使用php问卷调查结果统计,感兴趣的朋友一起学习吧
    2015-10-10
  • php实现爬取和分析知乎用户数据

    php实现爬取和分析知乎用户数据

    本文给大家介绍的是利用php的curl编写的爬取知乎用户数据的爬虫,并分析用户的各种属性,有需要的小伙伴可以参考下
    2016-01-01
  • PHP XML备份Mysql数据库

    PHP XML备份Mysql数据库

    以下是在Linux下通过Apache+PHP对Mysql数据库的备份的文件代码
    2009-05-05
  • php微信公众平台交互与接口详解

    php微信公众平台交互与接口详解

    这篇文章主要为大家详细介绍了php微信公众平台开发,交互与接口,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-11-11
  • PHP统计二维数组元素个数的方法

    PHP统计二维数组元素个数的方法

    数据表里面的字段 content 存储了一个以逗号分割的字符串,最大有20个数,最大数字为40。比如3,24,33,40类似字样的数字序列。其实就是一个保存了多项投票结果的字段啦。现在需要统计每个数字的个数,也就是每个投票项有多少人投了,并排序
    2013-11-11
  • Yii视图操作之自定义分页实现方法

    Yii视图操作之自定义分页实现方法

    这篇文章主要介绍了Yii视图操作之自定义分页实现方法,结合实例形式分析了Yii自定义分页的实现步骤与相关技巧,需要的朋友可以参考下
    2016-07-07

最新评论