使用PHP处理zip压缩文件之ZipArchive
jopen
10年前
PHP5.2以后,强化了对压缩文件的处理,不仅对zip算法,还包括rar算法、gzip算法等都有了相应的支持。
今天,我来和大家分享一下用PHP处理zip文件。我们用到的是ZipArchive类,如果你安装了PHP5.2以上,无需做任何配置即可开始使用该类。
创建压缩文件:
<?php //实例化类 $zip = new ZipArchive(); //需要打开的zip文件,文件不存在将会自动创建 $filename = "./test.zip"; if ($zip->open($filename, ZIPARCHIVE::CREATE)!==TRUE) { //如果是Linux系统,需要保证服务器开放了文件写权限 exit("文件打开失败!"); } //将一段字符串添加到压缩文件中,test.txt文件会自动创建 $zip->addFromString("test.txt", "你好 , 世界"); //将test.php文件添加到压缩文件中 $zip->addFile("test.php"); //输出加入的文件数 , 这里应该是 2 echo "文件数 : ".$zip->numFiles; //关闭文件 $zip->close(); ?>
创建的文件结构:
下面再来看解压文件:
<?php $zip = new ZipArchive; if ($zip->open('test.zip') === TRUE) { //将test.zip中的文件解压到test文件夹中,文件夹会自动创建 $zip->extractTo('test/'); $zip->close(); echo '解压成功'; } else { echo '解压失败'; } ?>
来自:http://my.oschina.net/crazymus/blog/345314