PHP 压缩流包装器

phpserver side programmingprogramming

简介

在 PHP 中,zlib://bzip2://zip:// 分别代表各自压缩流的包装器。

compress:zlib://

此函数的工作原理类似于 gzopen() 函数,但它可以与 fread() 等文件系统函数一起使用。

compress://bzip2

此函数类似于 bzopen() 函数。即使在不支持 fopencookie 的系统上,这两个流包装器也能运行。

zip://

ZIP 扩展注册了此包装器。从 PHP 7.2.0 开始,支持使用密码加密的存档。可以使用密码上下文选项设置密码。

示例

可以使用以下 PHP 代码应用 zlib 压缩

<?php
file_put_contents("compress.zlib://test.txt.gz","Hello World\r
"); ?>

要解压缩,我们可以使用以下语法

<?php
echo file_get_contents("compress.zlib://test.txt.gz");
?>

我们还可以使用内置的 copy() 函数来构建压缩的 zlib 文件并解压缩

copy('file.txt', 'compress.zlib://' . 'file.txt.gz');
copy('compress.zlib://' . 'file.txt.gz', 'file.txt');

相关文章