php rar_php 解压缩 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 ;

380d457592676e22f81d6106e72ac2a0.png

可以看到已经成功安装了 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);

}

这样就搞定用户上传的压缩包解压的问题了。返回搜狐,查看更多

责任编辑:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值