zl程序教程

您现在的位置是:首页 >  其他

当前栏目

ThinkPHP3.1新特性之对页面压缩输出的支持

输出 支持 页面 特性 压缩 ThinkPHP3.1
2023-06-13 09:15:28 时间

目前大多数浏览器都已经支持页面的压缩输出,通过压缩输出,页面大小可以减少30%,但是由于3.0及以前的版本都没有内置页面压缩输出功能,所以一般来说,开发人员需要自己在入口文件中添加:

ob_start("ob_gzhandler");

但是由于服务器环境的不同,有时候这个配置会和php.ini文件中的zlib压缩配置冲突。而ThinkPHP3.1版则内置了页面压缩输出的功能,不再需要再手动添加ob_gzhandler代码,增加OUTPUT_ENCODE配置参数,并支持检测zlib.output_compression。

框架默认会进行页面压缩输出,并且会自动检测zlib.output_compression配置,如果php.ini里面zlib.output_compression是开启状态,则仍然以服务器环境的页面压缩方式进行页面压缩。

相关代码只有一行:

if(!ini_get("zlib.output_compression")&&C("OUTPUT_ENCODE"))ob_start("ob_gzhandler");

在个别特殊的环境下面,如果出现类似下面的错误提示:

output_handler"ob_gzhandler"conflictswith"zlib.output_compression"

一般是由于你的服务器配置了其他的压缩方式导致冲突,这个时候你可以手动关闭OUTPUT_ENCODE,即:

"OUTPUT_ENCODE"=>false

就可以解决问题。