PHP:压缩 Zip
文章来源:http://www.cnblogs.com/hello-tl/p/7661222.html
<?php # 文件字符集
header("Content-type: text/html; charset=utf-8"); class TL_ZIP{
# web 跟
private $TL_ROOT; # zip包 目录
private $TL_DOWNLOAD; # zip文件名
private $TL_zipName; public function __construct(){
# 设置web根目录
$this->TL_ROOT = str_replace("\\", '/', dirname(__FILE__) . "/"); # 设置zip目录
$this->TL_DOWNLOAD = str_replace("\\", '/', dirname(__FILE__)) . "/DOWNLOAD/";
} # 设置 压缩包名称
public function getZipName($zipName){
# 判断一下文件名是否合法
$this->TL_zipName = $this->TL_DOWNLOAD . $zipName . ".zip";
return true;
} # 获取 压缩包名称
public function setZipName(){
return $this->TL_zipName;
} # 生成压缩包
public function createZip($arrFiles){
# 判断是否是数组
if(!is_array($arrFiles)){
return false;
} # 判断是否设置文件名 如果没有设定文件名 我就自己生成一个 哼!!!!
if(!$this->TL_zipName){
$this->TL_zipName = $this->TL_DOWNLOAD . date('YmdHis') . rand(111111111,999999999) . ".zip";
} # 定义zip文件名
$zipName = $this->TL_zipName; # 调用zip类
$zipClass = new ZipArchive();
if($zipClass->open($zipName, ZIPARCHIVE::CREATE) !== TRUE) {
return false;
}
foreach($arrFiles as $path){ # 判断是否是文件
if(is_file($this->TL_ROOT.$path)){ # 把文件加入到压缩包中
$zipClass->addFile($this->TL_ROOT.$path, basename($this->TL_ROOT.$path));
}
}
$zipClass->close();
return $zipName;
}
} $zipObj = new TL_ZIP();
$zipObj->createZip(
array(
'从设定的跟目录开始写文件地址',
'从设定的跟目录开始写文件地址',
'从设定的跟目录开始写文件地址'
)
);
文章来源:http://www.cnblogs.com/hello-tl/p/7661222.html
PHP:压缩 Zip的更多相关文章
- 在线压缩zip
<?php //验证密码 $password = "test"; ?> <html> <head> <meta http-equiv=&q ...
- java zip API实现压缩和解压缩zip包
package zip; import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import java.io ...
- Linux中解压、压缩 ZIP文件
解压 unzip -o -d /home/v-gazh myfile.zip # 把myfile.zip文件解压到 /home/v-gazh/ # -o:不提示的情况下覆盖文件: # -d:-d /h ...
- Linux下的压缩zip,解压缩unzip命令详解及实例
实例:压缩服务器上当前目录的内容为xxx.zip文件 zip -r xxx.zip ./* 解压zip文件到当前目录 unzip filename.zip ====================== ...
- asp.net 文件压缩zip下载
今天分享下昨天做的一个东西 asp.net 的文件 zip 批量下载,首先你需要去 到http://dotnetzip.codeplex.com这个站点下载zip 的包,在里面找到 Ionic.Z ...
- C# .NET 使用第三方类库DotNetZip解压/压缩Zip rar文件
DotNetZip on CodePlex: http://dotnetzip.codeplex.com/ 详细的可以看源代码……总之感觉比SharpZipLib好用.而且DotNetZip支持VB, ...
- 【转】ubuntu下解压缩zip,tar,tar.gz和tar.bz2文件
原文网址:http://blog.sina.com.cn/s/blog_5da93c8f0101h1uj.html 在Linux下面如何去压缩文件或者目录呢? 在这里我们将学习zip, tar, ta ...
- Linux下的压缩zip,解压缩unzip命令具体解释及实例
实例:压缩server上当前文件夹的内容为xxx.zip文件 zip -r xxx.zip ./* 解压zip文件到当前文件夹 unzip filename.zip ================= ...
- java压缩zip文件中文乱码问题(转——作者:riching)
本人遇到了同样的问题,用了以下方案,奇迹般的解决了.我很纳闷为什么,经理说:好读书,不求甚解,不要问为什么... 用java来打包文件生成压缩文件,有两个地方会出现乱码 1.内容的中文乱码问题,这个问 ...
- POI导出大量数据的简单解决方案(附源码)-Java-POI导出大量数据,导出Excel文件,压缩ZIP(转载自iteye.com)
说明:我的电脑 2.0CPU 2G内存 能够十秒钟导出 20W 条数据 ,12.8M的excel内容压缩后2.68M 我们知道在POI导出Excel时,数据量大了,很容易导致内存溢出.由于Excel ...
随机推荐
- bzoj 4318: OSU!【期望dp】
思路有点眼熟啊,就是设l1记录长为x的极长全1串贡献x的答案,l2记录长为x的极长全1串贡献x^2的答案,f记录真正的答案 转移的话根据n-(n-1)=1,n^2-(n-1)^2=2n-1,n^3-( ...
- win7下硬盘安装Windows
win7下硬盘安装Windows: 1.下载 Windows 7 ISO镜像,用虚拟光驱拷贝至非C盘(如d:\win7)2.开机按F8 - 修复系统 - 选择最后一项命令修复 - 在命令框输入 d:\ ...
- Go JSON嵌套解析失败
//结构体成员变量名首字母要大写,要小写需要用tag,请看范例. //如果没有tag,嵌套时就无法解析属性,解析失败就是空值. type messageRow struct { UserID stri ...
- Django MTV模型思想
一.Django的MTV分别代表: 1.Model(模型):负责业务对象与数据库的对象(ORM) 2.Template(模版):负责如何把页面展示给用户 3.View(视图):负责业务逻辑,并在适当的 ...
- [CF997E] Good SubSegment
Description Transmission Gate 给你一个长度为n的排列P,定义一段子区间是好的,当且仅当这个子区间内的值构成了连续的一段.例如对于排列\(\{1,3,2\}\),\([1, ...
- 解题报告:hdu 2073 无限的路
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2073 Problem Description 甜甜从小就喜欢画图画,最近他买了一支智能画笔,由于刚刚接 ...
- Mybatis事务处理
知识点有事务处理的配置,还有事务处理的方法 事务处理的配置: mybatis的事务处理由两种方式控制,JDBC和MANAGED: MANAGED就是说事务处理由第三方的插件来完成,比如说spring ...
- 数据流和ByteArray
问题:如何把一个long类型的数写进一个文件里 所以现在有DataInputStream和DataOutputStream 这两个是节点流 例子代码: import java.io.*; public ...
- ADO.net增删改的使用
添加数据 -------------------------------------------------- //让用户输入要添加的内容 Console.WriteLine("请输入要添加 ...
- 【原】无脑操作:Eclipse + Maven + jFinal + MariaDB 环境搭建
一.开发环境 1.windows 7 企业版 2.Eclipse IDE for Enterprise Java Developers Version: 2019-03 (4.11.0) 3.JDK ...