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

yipeiwu_com6年前PHP代码库
对于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将金额数字转化为中文大写

php将金额数字转化为中文大写 echo toChineseNumber(1234567890);//壹拾贰亿叁仟肆佰伍拾陆万柒仟捌佰玖拾圆 function toChineseNu...

从PHP $_SERVER相关参数判断是否支持Rewrite模块

如果是//www.jb51.net/p1141.html形式的URL,可通过$_SERVER['REQUEST_URI']和$_SERVER['QUERY_STRING']值的区别来分析...

php时区转换转换函数

复制代码 代码如下:/* * 时区转换 */function toTimeZone($src, $from_tz = 'America/Denver', $to_tz...

浅谈Coreseek、Sphinx-for-chinaese、Sphinx+Scws的区别

Sphinx是一个基于SQL的全文检索引擎;普遍使用于很多网站 Sphinx的特性如下: a)  高速的建立索引(在当代CPU上,峰值性能可达到10 MB/秒); b)&nbs...

PHP+ajax实现二级联动菜单功能示例

PHP+ajax实现二级联动菜单功能示例

本文实例讲述了PHP+ajax实现二级联动菜单功能。分享给大家供大家参考,具体如下: 如何实现二级联动 工作原理 二级联动在开发中是比较常见的一个技术点,它主要运用了JS的局部刷新技术a...