本文介绍了用PHP提取tar.gz格式文件的方法。分享给大家参考,如下:
1.使用php自己的压缩和存档扩展(phar)。
$ phar=new PhaDATa(' song . tar . gz ');//路径要解压缩的文件是否覆盖$ phar-extractto ('c:/tmp ',null,true);2.首先,需要安装pear类管理工具。
在linux下
/usr/local/PHP/bin/pear install Archive _ Tar
Wamp默认没有安装pear,go-pear.php适合老版本,php5.3需要下载go-pear.phar 。
将下载的文件放入php目录(任何目录都可以使用),执行php go-pear.phar命令,根据提示按enter键。
安装。
#这个类在实际安装pear的时候会默认安装pear Install Archive _ tar。
/* *原理:tar压缩包的前512字节有自己的固定格式。根据这512个字节,可以得到压缩包的文件名、大小等信息。用gzopen,gzread可以解压gz格式*/$ tar _ object=new archive _ tar(' song . tar . gz ');$ tar _ object-extract(' c :/tmp ',true);3.php调用外部命令来执行解压缩。
//在命令执行完成之前,脚本不会启动。popen命令不会异步执行错误报告。ini_set('display_errors ',1);$ handle=popen(' tar-xzvf song.tar.gz 21 ',' r ');/*while(!feof($ handle)){ set _ time _ limit(3);$ buffer=fgets($ handle);echo ' $ buffer nob _ flush();flush();} */echo“start n”;PC lose($ handle);回声“end n”;更多对PHP感兴趣的读者,请查看本网站专题:《PHP操作zip文件及压缩技巧总结》、《PHP基本语法入门教程》、《PHP错误与异常处理方法总结》、《php常用函数与技巧总结》。
希望本文对PHP编程有所帮助。