PHP解压缩文件函数详解

欲使用本函数库需先安装 zlib,可到 http://www.zlib.net/ 取得该函数库。
)

zclose: 关闭压缩文件。

gzeof: 判断是否在压缩文件尾。

gzfile: 读压缩文件到数组中。

gzgetc: 读压缩文件中的字符。

gzgets: 读压缩文件中的字符串。

gzgetss: 读压缩文件中的字符串,并去掉 HTML 指令。

gzopen: 打开压缩文件。

gzpassthru: 解压缩指针后全部资料。

gzputs: 资料写入压缩文件。

gzread: 压缩文件读出指定长度字符串。

gzrewind: 重设压缩文件指针。

gzseek: 设压缩文件指针至指定处。

gztell: 取得压缩文件指针处。

readgzfile: 读出压缩文件。

gzwrite: 资料写入压缩文件。

gzclose 关闭压缩文件。

语法: boolean gzclose(int zp);

返回值: 布尔值

函数种类: 特殊文件格式

内容说明: 本函数将已打开的压缩文件关闭。参数 zp 为压缩文件的指针代码。成功则返回 true 值。

参考: gzopen()

gzeof 判断是否在压缩文件尾。

语法: boolean gzeof(int zp);

返回值: 布尔值

函数种类: 特殊文件格式

内容说明: 本函数用来判断目前打开的压缩文件指针是否指到文件尾 (EOF, End OF File)。参数 zp 为压缩文件的指针代码。在文件尾则返回 true 值。

gzfile 读压缩文件到数组中。

语法: array gzfile(string filename);

返回值: 数组

函数种类: 特殊文件格式

内容说明: 本函数将压缩文件读出并解压缩至数组变量中。参数 filename 为文件名称。

gzgetc 读压缩文件中的字符。

语法: string gzgetc(int zp);

返回值: 字符串

函数种类: 特殊文件格式

内容说明: 本函数将压缩文件解压缩并取出一个字符。参数 gz 为压缩文件打开代码。若至文件尾则会返回 false。

gzgets 读压缩文件中的字符串。

语法: string gzgets(int zp, int length);

返回值: 字符串

函数种类: 特殊文件格式

内容说明: 本函数将压缩文件解压缩并取出指定长度的字符串。参数 gz 为压缩文件打开代码。参数 length 为指定字符串长度加一,意即读出的字符串长度为 length-1。若至文件尾或至行尾即行停止,因此本函数通常用来读取一行。

gzgetss 读压缩文件中的字符串,并去掉 HTML 指令。

语法: string gzgetss(int zp, int length);

返回值: 字符串

函数种类: 特殊文件格式

内容说明: 本函数将压缩文件解压缩并取出指定长度的字符串,并将字符串中的 HTML 或 PHP 指令去掉,返回纯文字。参数 gz 为压缩文件打开代码。参数 length 为指定字符串长度加一,意即读出的字符串长度为 length-1。若至文件尾或至行尾即行停止,因此本函数通常用来读取一行。

gzopen 打开压缩文件。

语法: int gzopen(string filename, string mode);

返回值: 整数

函数种类: 特殊文件格式

内容说明: 本函数用来打开压缩文件。参数 filename 为文件名称。参数 mode 为开文件的状态。若有失败则返回 false 值。

使用范例,下面为部份程序

<?php

  $fp=gzopen("/tmp/gzfile.gz""r");

?>

参考 gzclose()

gzpassthru 解压缩指针后全部资料。

语法: boolean gzpassthru(int zp);

返回值: 布尔值

函数种类: 特殊文件格式

内容说明: 本函数将已打开压缩文件文件指针后的资料全部解压缩,并输出至标准输出装置 (stdout)。参数 gz 为开文件的代码。若有失败则返回 false 值。

gzputs 资料写入压缩文件。

语法: boolean gzputs(int zp, string str, int [length]);

返回值: 布尔值

函数种类: 特殊文件格式

内容说明: 本函数其实就是 gzwrite()。参数 gz 为开文件的代码。参数 str 为欲写入的字符串。参数 length 可省略,为指定长度。若有失败则返回 false 值。

gzread 压缩文件读出指定长度字符串。
语法: string gzread(int zp, int length);
返回值: 字符串
函数种类: 特殊文件格式
内容说明: 本函数用来读取指定长度的字符串。参数 gz 为开文件的代码。参数 length 为指定长度。
使用范例
<?php
  $filename = "/temp/sosofile.txt.gz";
  $zd = gzopen($filename, "r");
  $contents = gzread($zd, 10000);
  gzclose($zd);
?>

gzrewind 重设压缩文件指针。

语法: boolean gzrewind(int zp);

返回值: 布尔值

函数种类: 特殊文件格式

内容说明: 本函数将重设压缩文件的文件操作指针到文件头处。参数 zp 为开文件代码。

gzseek 设压缩文件指针至指定处。

语法: int gzseek(int zp, int offset);

返回值: 整数

函数种类: 特殊文件格式

内容说明: 本函数将重设压缩文件的文件操作指针到指定的位处。参数 zp 为开文件代码。参数 offset 为第几个位。成功则返回 0,失败返回 -1。

gztell 取得压缩文件指针处。
语法: int gztell(int zp);
返回值: 整数
函数种类: 特殊文件格式
内容说明: 本函数用来取得压缩文件的文件操作指针在某位处。参数 zp 为开文件代码。
使用范例
<?php
  $exfile=gzopen("/tmp/haha.gz", "r");
  $aline=gzgets($exfile, 80);
  print("现在文件指针在第".gztell($exfile)."个位");
  gzclose($exfile);
?>

readgzfile 读出压缩文件

语法: boolean readgzfile(string filename);

返回值: 布尔值

函数种类: 特殊文件格式

内容说明: 本函数将压缩文件全部读出并解压缩,之后将内容送到标准输出设备上 (stdout)。参数 filename 为文件名称。本函数其实也可以读取非压缩文件至标准输出设备中。

gzwrite 资料写入压缩文件。

语法: boolean gzwrite(int zp, string string, int [length]);

返回值: 布尔值

函数种类: 特殊文件格式

内容说明: 本函数用来将资料写入指定的压缩文件中。参数 gz 为开文件的代码。参数 str 为欲写入的字符串。参数 length 可省略,为指定长度。若有失败则返回 false 值。

附上 PHP解压zip文件函数源码:

/**********************
*@file - path to zip file  需要解压的文件的路径
*@destination - destination directory for unzipped files  解压之后存放的路径
*@Recorded  By Androidyue
*@需要使用 ZZIPlib library ,请确认该扩展已经开启
*/
function unzip_file($file, $destination){
// 实例化对象
$zip = new ZipArchive() ;
//打开zip文档,如果打开失败返回提示信息
if ($zip->open($file) !== TRUE) {
    die ("Could not open archive");
}
//将压缩文件解压到指定的目录下
$zip->extractTo($destination);
//关闭zip文档
$zip->close();
    echo 'Archive extracted to directory';
}
//测试执行
//unzip_file("1.func.zip","1");  

谢谢关注websites博客!

PHP解压缩文件函数详解

时间: 2024-08-05 09:47:19

PHP解压缩文件函数详解的相关文章

perl readdir函数详解 获取目录下文件

perl readdir函数详解 2013年12月30日  Perl基础  共 763字 字号 小 中 大  暂无评论  阅读 4,384 次 readdir函数从一个用 opendir 打开的目录句柄读取目录记录也就是文件名.用法如下: readdir DIRHANDLE 在标量环境中,readdir函数返回下一个目录记录,否则,它返回undef.在列表环境中,它返回在该目录中所有剩下的记录,如果剩下没有记录了,那么这个返回可能是一个空列表.比如: opendir(THISDIR, ".&qu

Windows DIB文件操作详解-4.使用DIB Section

前面讲了为了提高DIB的显示性能和效率,我们将DIB转换成DDB,但是这又遇到一个问题,如果我想操作DIB的数据的话,显然是不能使用DDB:一是因为DIB转DDB时发生了颜色转换,再就是DDB无法直接提取指定像素点的数据.那么我们怎么办呢,Windows使用一种折中的方式来达到这一目标(既提高了显示效率和性能,又可以直接操作像素点). 1.DIB Section存储和显示 Windows使用DIB块(DIB Section)来存储DIB数据,其内存结构示意图如下 其实,和我们自己读入DIB数据到

Python内置函数详解

置顶   内置函数详解 https://docs.python.org/3/library/functions.html?highlight=built#ascii 此文参考了别人整理好的东西(地址:http://www.cnblogs.com/sesshoumaru/p/6140987.html#p1),然后结合自己的理解,写下来,一方面方便自己,让自己好好学习,顺便回忆回忆:另一方面,让喜欢的盆友也参考一下. 经查询,3.6版本总共有68个内置函数,主要分类如下: 数学运算(7个) 类型转换

CreateFile函数详解

CreateFile函数详解 CreateFile The CreateFile function creates or opens the following objects and returns a handle that can be used to accessthe object: files pipes mailslots communications resources disk devices(Windows NT only) consoles directories(open

php学习之道:php中iconv函数 详解

iconv函数库能够完成各种字符集间的转换,是php编程中不可缺少的基础函数库. 用法如下: $string = "亲爱的朋友欢迎访问胡文芳的博客,希望给您带来一点点的帮助!"; iconv("utf8","gbk",$string)//将字符串string  编码由utf8转变成gbk: 扩展如下: echo $str= '你好,欢迎访问胡文芳的博客,该博客记录一个程序员的成长过程!'; echo ' '; echo iconv('GB2312

RPM安装包-Spec文件参数详解与示例分析

spec文件是整个RPM包建立过程的中心,它的作用就如同编译程序时的Makefile文件. 1.Spec文件参数 spec文件包含建立一个RPM包必需的信息,包括哪些文件是包的一部分以及它们安装在哪个目录下.这个文件一般分为如下的几节: (1) Preamle(序言) 序言包含用户请求包的信息时所显示的内容.它可以包含包的功能描述.包的软件版本.版权信息和所属的包组等.Summary 是一行关于该软件包的描述,Name 是该软件包的基名,Version 是该软件的版本号,Release 是 RP

C++文件读写详解(ofstream,ifstream,fstream)

c++bufferiosiostreamfilestream 目录(?)[+] 在看C++编程思想中,每个练习基本都是使用ofstream,ifstream,fstream,以前粗略知道其用法和含义,在看了几位大牛的博文后,进行整理和总结: 这里主要是讨论fstream的内容: [java] view plaincopyprint? #include <fstream> ofstream         //文件写操作 内存写入存储设备 ifstream         //文件读操作,存储设

Windows DIB文件操作详解-1.DIB的读入、保存和显示

DIB(设备无关位图)是存储在磁盘上的位图文件,可以从磁盘读到内存中或从内存保存到磁盘上,它的磁盘文件结构是标准化的,在Linux.Unix及Windows上都可以以同样效果显示.位图是最接近硬件的图像格式,Windows显示的核心是位图,它的SDK API专门提供了一组用于操作DIB文件的函数.但是由于这样或那样的原因,高效合理的使用这些DIB API是需要了解不少历史和使用背景的,在这里我抽茧剥丝介绍和演示DIB的使用,相信对你更好的使用DIB文件有帮助,由于DIB函数比较多,这里分为三部分

Linux popen()函数详解

表头文件 #include<stdio.h> 定义函数 FILE * popen( const char * command,const char * type); 函数说明 popen()会调用fork()产生子进程,然后从子进程中调用/bin/sh -c来执行参数command的指令.参数type可使用“r”代表读取,“w”代表写入.依照此type值,popen()会建立管道连到子进程的标准输出设备或标准输入设备,然后返回一个文件指针.随后进程便可利用此文件指针来读取子进程的输出设备或是写