php安装php_rar扩展实现rar文件读取和解压的方法

本文实例讲述了php安装php_rar扩展实现rar文件读取和解压的方法。分享给大家供大家参考,具体如下:

PHP Rar Archiving 模块 (php_rar) 是一个读取和解压rar文件的模块,但不提供RAR压缩(打包)的功能。

1.首先要到PECL的RAR页面下载DLL. 根据自己的情况选择下载对应版本的DLL.

PHP版本要求:php_rar模块适用于php 5.2及以上, 不过对于windows系统,似乎只有php5.3 / 5.4对应的DLL下载。

2.下载到的是个zip包,将其中的php_rar.pdb和php_rar.dll两个文件解压到PHP安装目录下的ext子目录中。

3.在php.ini中加入一行php_rar扩展引用声明 extension=php_rar.dll

4.如果使用Apache服务器,就需要重启Apache。IIS下以FastCGI模式加载的PHP则不需要进一步操作了。

5.写个测试文件看看有没有问题啊

6.如果有问题,查看服务器的日志文件。

附官方的测试代码test-rar.php :

<?php
$archive_name = '/full/path/to/file.rar'
$entry_name = 'path/to/archive/entry.txt'; //notice: no slash at the beginning
$dir_to_extract_to = '/path/to/extract/dir';
$new_entry_name = 'some.txt';
$rar = rar_open($archive_name) OR die('failed to open ' . $archive_name);
$entry = rar_entry_get($rar, $entry_name) OR die('failed to find ' . $entry_name . ' in ' . $archive_name);
// this will create all necessary subdirs under $dir_to_extract_to
$entry->extract($dir_to_extract_to);
/* OR */
// this will create only one new file $new_entry_name in $dir_to_extract_to
$entry->extract('', $dir_to_extract_to.'/'.$new_entry_name);
// this line is really not necessary
rar_close($rar);
?>

更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP扩展开发教程》、《php文件操作总结》、《PHP目录操作技巧汇总》、《PHP常用遍历算法与技巧总结》、《PHP数组(Array)操作技巧大全》、《PHP基本语法入门教程》、《PHP运算与运算符用法总结》、《php字符串(string)用法总结》及《php常见数据库操作技巧汇总》

希望本文所述对大家PHP程序设计有所帮助。

(0)

相关推荐

  • php通过文件头检测文件类型通用代码类(zip,rar等)

    有时候我们这样做还不完善.可能有些人上存一些文件,但是他通过修改扩展名,让在我们的文件类型之内. 单实际访问时候又不能展示(因为扩展名与文件内容不符).下面这个php类,可能能够给我们带来帮助.一.php检测类 首先说明下,上面文件头与文件类型映射关系来自网上,如果你有新的文件需要检查,只需要将映射加入即可. 如果你需要知道文件头信息,可以通过工具:winhex打开标准文件查找.如: 代码: 复制代码 代码如下: <?php /*通过文件名,获得文件类型* *@author chengmo* *

  • PHP解压tar.gz格式文件的方法

    本文实例讲述了PHP解压tar.gz格式文件的方法.分享给大家供大家参考,具体如下: 1.运用php自带压缩与归档扩展(phar) $phar = new PharData('song.tar.gz'); //路径 要解压的文件 是否覆盖 $phar->extractTo('c:/tmp', null, true); 2.首先需要安装pear类管理工具 linux下 /usr/local/php/bin/pear install Archive_Tar wamp默认没有安装pear,  go-p

  • PHP5.3以上版本安装ZendOptimizer扩展

    现在很多PHP程序都需要ZendOptimizer环境,但是ZendOptimizer在PHP5.2之后已经被支持,那怎么办,Zend也不会这么做,原来PHP5.3开始ZendOptimizer正式改为Zend Guard Loader. Zend Guard Loader的发布,而且Zend Optimizer不会再更新,并且由于差异很大使用Zend Guard加密代码时将提示你是否使用php5.3,如果使用5.3那么代码就无法在php5.2上运行. Zend Guard Loader安装说明

  • PHP执行zip与rar解压缩方法实现代码

    Zip:PclZip http://www.phpconcept.net/pclzip/index.en.php Rar:PECL rar http://pecl.php.net/package/rar 以往过去要在php下执行解压缩程序,无非最常见的方法是写command 然后用exec()等执行函式去跑 这在Windows下或许可以,但换成Unix话会碍于帐号权限问题而无法顺利执行 那有没有那种本身就有提供函式可以直接使用而不需要去下command去跑的方法呢 答桉有(话说找了好几天才找到可

  • PHP自带ZIP压缩、解压缩类ZipArchiv使用指南

    要使用该PHP扩展类,需要(PHP 5 >= 5.2.0, PECL zip >= 1.1.0),部分方法需要 PHP 5.2.+,且php.ini配置支持zip 对于win系统,直接去掉php_zip.dll 扩展的注释,然后重启http服务(IIS或Apache)即可 Linux还没有试验,理论上差别不会很大 功能: 1.解压缩zip文件 2.将文件压缩成zip文件 3.追加文件到zip文件 4.将文件夹打包成zip文件(需要循环添加文件与创建空文件夹) 5.删除压缩文件中的条目 ----

  • php实现zip压缩文件解压缩代码分享(简单易懂)

    仔细的研究了一下,原来用php写的解压程序效率比想象的还是高很多的,既然这么好,干脆再优化一下后用到自己后台中,虽然现在大部分空间的控制面板中有压缩和解压这个功能,但是毕竟有时候有些麻烦. 做这个之前,没有接触过php压缩这一块,网上搜了一些,大多数都是php压缩类.压缩函数,少则几百行,多的就几千行代码.这对于我这种新手来说很摸不到头脑,再说我也不用这么复杂的功能.最后参考函数手册,理清楚了几个相关的函数后,就明白了怎么去整了. 记得要开启 zip ,把 php.ini 中的 extensio

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

    对于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',"

  • Linux下为PHP添加扩展库的方法

    加上会出什么问题,不加会报什么错:所以在编译PHP的时候除了必要的目录指定,好多参数都没有加--等我在安装web程序的时候,才发现,很多参数是要加上的,但是我lnmp已经搭建好了,也不想重新编译,重新安装..于是就在网上找到了此文 一.添加FTP扩展 1.找到原来的源码包解压一下如:php-5.2.13进入到到FTP的扩展目录/root/lnmp/php-5.3.0/ext/ftp 2.调用phpize程序生成编译配置文件 复制代码 代码如下: root@dns ftp]# /usr/local

  • 批量修改RAR文件注释的php代码

    我们打开WINRAR的帮助文件,帮助文件中提到了在命令行模式下修改RAR文件注释及添加压缩文档的两个参数分别为A\C,WINRAR的说明文件如下: 从当前文件夹添加全部 *.hlp 文件到压缩文件 help.rar 中 WinRAR a help *.hlp 从文件添加注释可以使用 -z<文件> 开关. WinRAR c -zinfo.txt dummy 这样,我们就可以通过PHP调用CMD,运行上述两个WINRAR参数来做到批量修改RAR文件的注释及添加压缩包的文件.需要注意的是,PHP在安

  • php实现zip文件解压操作

    PHP解压zip文件函数,源码简短,需要使用 ZZIPlib library 扩展,使用前请确认该扩展已经开启. <? /********************** *@file - path to zip file 需要解压的文件的路径 *@destination - destination directory for unzipped files 解压之后存放的路径 *@需要使用 ZZIPlib library ,请确认该扩展已经开启 */ function unzip_file($fil

  • php zip文件解压类代码

    复制代码 代码如下: class zip { var $datasec, $ctrl_dir = array(); var $eof_ctrl_dir = "\x50\x4b\x05\x06\x00\x00\x00\x00"; var $old_offset = 0; var $dirs = Array("."); function get_List($zip_name) { $zip = @fopen($zip_name, 'rb'); if(!$zip) ret

随机推荐