近一个wordpress网站需要上传到ftp空间里,网络不是很好,传输的时候断断续续的,中间暂停了好几次,也不知道后是否上传了完整的程序。如果直接压缩一下,上传后再解压一下,效率就会提高很多。上传后发现,空间商的文件管理器提示由于上传的文件过大,不在支持在线解压。由于用的是php空间,支持php程序。php本身有个 ZipArchive 类支持解压和压缩文件。所以可以通过 ZipArchive 进行解压。
先看看php官方是怎么介绍 ZipArchive
,只要一句话
此扩展可以让你透明地读写ZIP压缩文档以及它们里面的文件。
这里可以看到,支持的是zip格式的文件,所以压缩文件的时候,只能使用 zip格式的文件,不能用 rar格式文件。
这里给出一个完整的解压文件
file: unzip.php
# 判断一个当前的空间是否支持 ZipArchive
if(!class_exists('ZipArchive')) {
die("php程序不支持 ZipArchive 扩展");
}
$zip = new ZipArchive();
# 这里写要解压的文件
$res = $zip->open('压缩的文件.zip');
if($res)
{
# 解压的目录为当前的目录
$zip->extractTo('.');
$zip->close();
}
程序很简单,也不完善,如果碰见php没有启用这个扩展,也不能正确的执行。
使用的方法就很简单了,上传前,修改两个地方
1. 压缩的文件
修改成要解压的文件
2. 默认是,解压的到当前目录,这个可以根据需要进行修改。