这些函数的行为受 php.ini 中的设置影响。
zlib 扩展提供了一个选项,如果请求的浏览器支持,可以透明地对你的页面进行实时压缩。因此,在 配置文件 php.ini 中有三个选项。
名称 | 默认值 | 可更改 | 变更日志 |
---|---|---|---|
zlib.output_compression | "0" | INI_ALL |
|
zlib.output_compression_level | "-1" | INI_ALL |
|
zlib.output_handler | "" | INI_ALL |
以下是配置指令的简短说明。
zlib.output_compression
bool/int是否透明地压缩页面。如果在 php.ini 或 Apache 配置中将此选项设置为“On”,则如果浏览器发送“Accept-Encoding: gzip”或“deflate”头,页面将被压缩。“Content-Encoding: gzip”(或“deflate”)和“Vary: Accept-Encoding”头将被添加到输出中。在运行时,它只能在发送任何输出之前设置。
此选项也接受整数值而不是布尔值“On”/“Off”,使用它你可以设置输出缓冲区大小(默认值为 4KB)。
注意:
如果此选项设置为“On”,则 output_handler 必须为空!相反,你必须使用
zlib.output_handler
。
zlib.output_compression_level
int用于透明输出压缩的压缩级别。指定一个介于 0(无压缩)到 9(最高压缩)之间的值。默认值 -1 允许服务器决定使用哪个级别。
zlib.output_handler
string如果 zlib.output_compression 在此处被激活,则你无法指定其他输出处理程序。此设置与 output_handler 执行相同的操作,但顺序不同。