php实现压缩HTML页面代码的原理很简单,开启服务器的缓存,就将要输出的内容先放入缓存,页面结束时取出缓存的数据并进行处理,输出到浏览器即可!
<?php //开启php缓存,这里是页面的顶部 if (extension_loaded('zlib')){ ob_end_clean(); ob_start('ob_gzhandler'); }else{ ob_end_clean(); ob_start(); } ?> <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> </head> <body> <!----> 这里是网页的内容 </body> </html> <?php //这里是页面的最氏部 //获取脚本执行完后在缓存中的代码 $content = ob_get_contents(); //对缓存中的数据进行压缩处理,并赋值给一个变量 $content = ltrim(rtrim(preg_replace(array("/> *([^ ]*) *</","//","'/\*[^*]*\*/'","/\r\n/","/\n/","/\t/",'/>[ ]+</'),array(">\\1<",'','','','','','><'),$content))); //清空并关闭缓存,不直接输出到浏览器 ob_end_clean(); //输出处理后的缓存数据到浏览器 echo $content; ?>