示例

此示例打开一个临时文件并向其中写入测试字符串,然后它将此文件的内容打印两次。

示例 #1 小 Zlib 示例

<?php

$filename
= tempnam('/tmp', 'zlibtest') . '.gz';
echo
"<html>\n<head></head>\n<body>\n<pre>\n";
$s = "Only a test, test, test, test, test, test, test, test!\n";

// 以最大压缩打开文件以供写入
$zp = gzopen($filename, "w9");

// 将字符串写入文件
gzwrite($zp, $s);

// 关闭文件
gzclose($zp);

// 打开文件以供读取
$zp = gzopen($filename, "r");

// 读取 3 个字符
echo gzread($zp, 3);

// 输出到文件末尾并关闭它。
gzpassthru($zp);
gzclose($zp);

echo
"\n";

// 打开文件并打印内容(第二次)。
if (readgzfile($filename) != strlen($s)) {
echo
"Error with zlib functions!";
}
unlink($filename);
echo
"</pre>\n</body>\n</html>\n";

?>

示例 #2 使用增量压缩和解压缩 API

<?php
// 执行 GZIP 压缩:
$deflateContext = deflate_init(ZLIB_ENCODING_GZIP);
$compressed = deflate_add($deflateContext, "Data to compress", ZLIB_NO_FLUSH);
$compressed .= deflate_add($deflateContext, ", more data", ZLIB_NO_FLUSH);
$compressed .= deflate_add($deflateContext, ", and even more data!", ZLIB_FINISH);

// 执行 GZIP 解压缩:
$inflateContext = inflate_init(ZLIB_ENCODING_GZIP);
$uncompressed = inflate_add($inflateContext, $compressed, ZLIB_NO_FLUSH);
$uncompressed .= inflate_add($inflateContext, NULL, ZLIB_FINISH);
echo
$uncompressed;
?>

以上示例将输出

Data to compress, more data, and even more data!
添加备注

用户贡献的备注

此页面没有用户贡献的备注。
To Top