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 '解压失败';
}
?>
欢迎大家和我交流,若有任何问题请留言。
来源:oschina
链接:https://my.oschina.net/u/243742/blog/345314