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

项目涉及文档处理,用户上传的包括 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压缩包文件的方法的详细内容,更多请关注0133技术站其它相关文章!

赞(0) 打赏
未经允许不得转载:0133技术站首页 » PHP编程