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

时间:2021-05-26

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

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章