php 解压rar文件及zip文件的方法


Posted in PHP onMay 05, 2014

对于zip文件网上的例子很多,rar文件解压php没有直接支持,可以用pecl到http://pecl.php.net/package/rar 下载对应版本的 非线程安全的dll然后扔到php的 ext目录下。

打开php.ini.

加一行

extension=php_rar.dll

重启web服务器 和php

public function _unzip($fileName,$extractTO){ $fileName = iconv('utf-8','gb2312',"upload/zip/8月.rar"); 
// echo $fileName . '</br>'; 
$extractTo = "upload/zip/TEST/"; 
$rar_file = rar_open($fileName) or die('could not open rar'); 
$list = rar_list($rar_file) or die('could not get list'); 
// print_r($list); 

foreach($list as $file) { 
$pattern = '/\".*\"/'; 
preg_match($pattern, $file, $matches, PREG_OFFSET_CAPTURE); 
$pathStr=$matches[0][0]; 
$pathStr=str_replace("\"",'',$pathStr); 
// print_r($pathStr); 
$entry = rar_entry_get($rar_file, $pathStr) or die('</br>entry not found'); 
$entry->extract($extractTo); // extract to the current dir 
} 
rar_close($rar_file); 
}
PHP 相关文章推荐
Session的工作方式
Oct 09 PHP
PHP读取目录下所有文件的代码
Jan 07 PHP
PHP笔记之:日期函数的使用介绍
Apr 24 PHP
PHP 5.5 创建和验证哈希最简单的方法详解
Nov 07 PHP
PHP+ajaxfileupload+jcrop插件完美实现头像上传剪裁
Jun 09 PHP
php实现通过ftp上传文件
Jun 19 PHP
使用PHP uniqid函数生成唯一ID
Nov 18 PHP
php实现中文转数字
Feb 18 PHP
PHP 获取 ping 时间的实现方法
Sep 29 PHP
总结PHP内存释放以及垃圾回收
Mar 29 PHP
php伪静态验证码不显示的解决方案
Sep 26 PHP
PHP+Mysql分布式事务与解决方案深入理解
Feb 27 PHP
php中session过期时间设置及session回收机制介绍
May 05 #PHP
使用php语句将数据库*.sql文件导入数据库
May 05 #PHP
PHP判断是否有Get参数的方法
May 05 #PHP
php快递单号查询接口使用示例
May 05 #PHP
JS异常处理try..catch语句的作用和实例
May 05 #PHP
php生成短网址示例
May 05 #PHP
PHP zip扩展Linux下安装过程分享
May 05 #PHP
You might like
关于UEditor编辑器远程图片上传失败的解决办法
2012/08/31 PHP
php调用nginx的mod_zip模块打包ZIP文件
2014/06/11 PHP
php在数据库抽象层简单使用PDO的方法
2015/11/03 PHP
Zend Framework前端控制器用法示例
2016/12/11 PHP
PHP通过文件路径获取文件名的实例代码
2018/10/14 PHP
PDO::lastInsertId讲解
2019/01/29 PHP
javascript 变量作用域 代码分析
2009/06/26 Javascript
javascript中运用闭包和自执行函数解决大量的全局变量问题
2010/12/30 Javascript
js中if语句的几种优化代码写法
2011/03/12 Javascript
Extjs显示从数据库取出时间转换JSON后的出现问题
2012/11/20 Javascript
浅析JavaScript中的隐式类型转换
2013/12/05 Javascript
JavaScript原型链示例分享
2014/01/26 Javascript
使用GruntJS构建Web程序之构建篇
2014/06/04 Javascript
seaJs的模块定义和模块加载浅析
2014/06/06 Javascript
javascript判断网页是关闭还是刷新
2015/09/12 Javascript
SpringMVC restful 注解之@RequestBody进行json与object转换
2015/12/10 Javascript
JavaScript模拟push
2016/03/06 Javascript
jquery滚动条插件(可以自定义)
2016/12/11 Javascript
jQuery元素选择器实例代码
2017/02/06 Javascript
bootstrapValidator.min.js表单验证插件
2017/02/09 Javascript
分享vue.js devtools遇到一系列问题
2017/10/24 Javascript
vue页面跳转后返回原页面初始位置方法
2018/02/11 Javascript
Vue 自定义标签的src属性不能使用相对路径的解决
2019/09/17 Javascript
python使用tcp实现局域网内文件传输
2020/03/20 Python
对python 操作solr索引数据的实例详解
2018/12/07 Python
python使用time、datetime返回工作日列表实例代码
2019/05/09 Python
Python3中urlencode和urldecode的用法详解
2019/07/23 Python
python opencv鼠标事件实现画框圈定目标获取坐标信息
2020/04/18 Python
Python常用扩展插件使用教程解析
2020/11/02 Python
详解Django关于StreamingHttpResponse与FileResponse文件下载的最优方法
2021/01/07 Python
Burberry英国官网:英国标志性奢侈品牌
2017/03/29 全球购物
北京-环亚运商测试题.net程序员初步测试题
2013/05/28 面试题
实习教师自我鉴定
2013/12/12 职场文书
企业党的群众路线教育实践活动学习心得体会
2014/10/31 职场文书
2014年财务工作总结范文
2014/11/11 职场文书
2015年小学生自我评价范文
2015/03/03 职场文书