为了能够在 PHP 中读取和写入使用 gzip 压缩的文件,我们使用了一个名为 PHP zlib 模块的模块。通过在 PHP 中使用 zlib 模块,可以更快地向最终用户提供内容,因为数据流被压缩,并且为了在我们的程序中启用 zlib 模块,我们应该在中添加 zlib.output_compression = on 行在某些应用程序(例如pligg)中必须强制启用程序和zlib模块,并且该模块定义了两个常量,即FORCE_GZIP和FORCE_DEFLATE,这两个常量在运行时手动加载扩展时可用。
开始您的免费软件开发课程
网络开发、编程语言、软件测试及其他
在 PHP 中声明 zlib 模块的语法:
zlib.output_compression = on
下面给出的是 PHP zlib 的示例:
PHP 程序演示 zlib 模块透明地读取和写入已使用 gzip 压缩的文件。
代码:
<html> <body> <?php #creating a temporary file which is compressed by gzip using tempnum function and storing the path to the file location in a variable called newfile $newfile = tempnam('/tmp','exfile') . '.gz'; #storing the contents to be written to the file in a variable called data $data = "Welcome to PHP\n"; #opening the gzip compressed file using gzopen function $fileopen = gzopen($newfile, "w9"); #writing the contents to the gzip compressed file using gzwrite function gzwrite($fileopen, $data); #closing the file after writing the contents to the gzip compressed file gzclose($fileopen); #opening the gzip compressed file for reading using gzopen function $fileopen = gzopen($newfile, "r"); #reading the contents written to the created file using gzread function echo gzread($fileopen); #closing the file after reading the contents of the file gzpassthru($fileopen); gzclose($fileopen); echo "\n"; #unlink function is used to delete the file that was just being read unlink($newfile); ?> </body> </html>
输出:
在上面的程序中,使用 tempnum 函数创建了一个临时文件,该文件使用 gzip 进行压缩,并且文件位置的路径存储在名为 newfile 的变量中。然后,要写入新创建的 gzip 压缩文件的内容将存储在名为 data 的变量中。然后使用 gzopen 函数以写入模式打开 gzip 压缩文件。然后使用gzwrite函数将存储在data变量中的内容写入gzip压缩文件中。然后使用 gzclose 函数关闭 gzip 压缩文件。然后使用 gzopen 函数以读取模式打开 gzip 压缩文件,以读取使用 gzread 函数刚刚写入文件的内容,并将其显示为屏幕上的输出。然后使用 gzclose 函数关闭 gzip 压缩文件。然后使用取消链接功能删除文件。
PHP 程序演示 zlib 模块透明地读取和写入已使用 gzip 压缩的文件。
代码:
<html> <body> <?php #creating a temporary file which is compressed by gzip using tempnum function and storing the path to the file location in a variable called newfile $newfile = tempnam('/tmp','exfile') . '.gz'; #storing the contents to be written to the file in a variable called data $data = "Learning is fun\n"; #opening the gzip compressed file using gzopen function $fileopen = gzopen($newfile, "w9"); #writing the contents to the gzip compressed file using gzwrite function gzwrite($fileopen, $data); #closing the file after writing the contents to the gzip compressed file gzclose($fileopen); #opening the gzip compressed file for reading using gzopen function $fileopen = gzopen($newfile, "r"); #reading the contents written to the created file using gzread function echo gzread($fileopen); #closing the file after reading the contents of the file gzpassthru($fileopen); gzclose($fileopen); echo "\n"; #unlink function is used to delete the file that was just being read unlink($newfile); ?> </body> </html>
输出:
在上面的程序中,使用 tempnum 函数创建了一个临时文件,该文件使用 gzip 进行压缩,并且文件位置的路径存储在名为 newfile 的变量中。然后,要写入新创建的 gzip 压缩文件的内容将存储在名为 data 的变量中。然后使用 gzopen 函数以写入模式打开 gzip 压缩文件。然后使用gzwrite函数将存储在data变量中的内容写入gzip压缩文件中。然后使用 gzclose 函数关闭 gzip 压缩文件。然后使用 gzopen 函数以读取模式打开 gzip 压缩文件,以读取使用 gzread 函数刚刚写入文件的内容,并将其显示为屏幕上的输出。然后使用 gzclose 函数关闭 gzip 压缩文件。然后使用取消链接功能删除文件。
以上是PHP zlib的详细内容。更多信息请关注PHP中文网其他相关文章!